【原创】Java中的运算符以及字符串的运算。

2023-03-03 20:44:39 浏览数 (1)

赋值运算符(=):

代码语言:javascript复制
将等号右边的数赋值给等号左边的变量或者final修饰的常量。

算数运算符( 、-、*、/、%、 、--)

代码语言:javascript复制
 :表示正数,做加法运算,和字符串类型搭配使用做连接符
-:表示负数,做减法运算。
*:做乘法运算。
/:做除法运算(两个整数相除,结果去整数,只要除法中有小数,则结果为小数。如:int num = 7 / 5;输出结果为1.)
%:取模运算,获得两个数相除的余数。(如: 5%3 结果为2).
  :自增运算:
    num   和   num的区别:
     num   先运算,再自增。
       num 先自增,再运算。
[重点]  int num = 10;
        num = num  ;
       System.out.println(num); 输出结果为10.
   分析:在执行num   会先定义一个变量,用于保存num的初始值。
         执行num  自增操作:num = num   1, num=11
         把nun  的结果来参与运算,也就是将保存num初始值的变量参与运算,即num = num   =10;
--:自减运算符:
    num-- 和 --num的区别:
     num-- 先运算,再自减。
     --num 先自减,再运算。     

扩展运算符( =、-=、*=、/=、%=):

代码语言:javascript复制
 = 例如: m n,等效于:m = (m对应类型)(m (n));
-= 例如: m n,等效于:m = (m对应类型)(m-(n));
*= 例如: m n,等效于:m = (m对应类型)(m*(n));
/= 例如: m n,等效于:m = (m对应类型)(m/(n));
%= 例如: m n,等效于:m = (m对应类型)(m%(n));

注意:m不能为常量,因为常量无法重新赋值。 难点:

代码语言:javascript复制
 short num = 11;
 num = num   1; //编译错误,因为num 1的结果为int类型。
 
 short num = 11;
 num  = 1; //输出为12,在进行扩展运算符时,会自动强转为变量对应的数据类型。

关系运算符:

、<、 >=、<=、==、!= ==(等于)判断左右两边的数据值是否相等,可以用来比较小数,整数和char类型。

!=(不等于)判断左右两边的数据值是否不相等,可以用来比较小数,整数和char类型。 逻辑运算符: 包含:&、|、^、&&、||、! 与运算(&):当两边都为true时,结果为true;只要一边为false,则与运算的结果为false。 或运算(&):当两边都为false时,结果为false;只要一边为true,则与运算的结果为true。 异或运算(^):当两边相等时,则结果为false;当两边不相等,则结果为true。 短路与运算(&&):当两边都为true时,结果为true;只要一边为false,则与运算的结果为false。

代码语言:javascript复制
   与"与运算"的区别:当第一个操作数时为true时,则不会执行第二个操作数的运算。

短路或运算(||):当两边都为false时,结果为false;只要一边为true,则与运算的结果为true。

代码语言:javascript复制
   与"或运算"的区别:当第一个操作数为false时,则不会执行第二个操作数的运算。

非运算(!):取反的意思,取反的意思,即!true 结果为false;!false 结果为true。 位运算(二进制运算): &、|、^、~、<<、>>、>>> &、|、^ 与Boolean参与运算时为与或和异或的运算。 &、|、^ 与数值参与运算时则为位运算。 与位运算(&):

代码语言:javascript复制
 当同一列两个位都为1时,则结果位1,当同一列两位数至少有一个位0时,则结果为0.

或位运算(|)

代码语言:javascript复制
 当同一列两个位都为0时,则结果为0,当同一列两位数至少有一个位1时,则结果为0.

异或位运算(^)

代码语言:javascript复制
 当同一列两个数相同时,结果为0,当同一列两个数不同时,结果为1.

非运算(~)

代码语言:javascript复制
 取反运算,当位为0时,则结果为1,当位为1时,则结果为0

左移位运算(<<)

代码语言:javascript复制
 把原来的二进制向左移动,末尾补零,如m << n,就是将m的二进制位向左移动n位,得到的结果为m*2^n(正数和负数均通用)

右移位运算(>>)

代码语言:javascript复制
 把原来的二进制向右移动,正数高位补零,负数高位补1
 如m >> n,就是将m的二进制位向左移动n位,得到的结果为m/2^n(仅适用于正数)

无符号右移为运算(>>>)

代码语言:javascript复制
 把原来的二进制向右移动,正数和负数高位均补0.
 正数的无符号右移位:如m>>>n,向右移动n位,结果为m/2^n

三目运算: 语法:条件表达式?表达式1:表达式2 如:int num =num >10 ? num = 1: num-=1; 字符串的比较 使用equals()方法: 如 int 1 = "3",num2 = "4";

代码语言:javascript复制
 num1.equals(num2);

返回结果为true,则表示字符串1与字符串2内容相同 返回结果为false,则表示字符串1与字符串2内容不同

0 人点赞