运算符

运算符(就是对常量和变量进行操作的符号)

(1)算术运算符

         A:+,-,*,/,%,++,--
         B:+的用法
                 a:加法
                 b:正号
                  c:字符串连接符
         C:/和%的区别
               数据做除法操作的时候,/取得是商,%取得是余数
            注意事项:
                       a:整数相除只能得到整数。如果想得到小数,必须把数据变化为浮点数类型

                             (只需要把操作的数据中任意的一个数据变为浮点数)
                        b:/获取的是除法操作的商,%获取的是除法操作的余数
         D:++和--的用法
                 a:他们的作用是自增或者自减
                  b:使用
                    **单独使用
                                  放在操作数据的前面和后面效果一样。
                                  a++或者++a效果一样。
                    **参与操作使用
                            放在操作数的前面:先自增或者自减,再参与操作
                                       int a = 10;
                                       int b = ++a;
                           放在操作数的后面:先参与操作,再自增或者自减
                                        int a = 10;
                                        int b = a++;

例一:

 int a = 10;
 int b = 10;
 int c = 10;

 a = b++;
 c = --a;
 b = ++a;
 a = c--;
 请分别计算出a,b,c的值
 
例二:
 int x = 4;
 int y = (x++)+(++x)+(x*10);
 请分别计算出x,y的值

解:一:a = b++; //a=10,b=11,c=10
               c = --a; //a=9,b=11,c=9
               b = ++a; //a=10,b=10,c=9
               a = c--; //a=9,b=10,c=8

       二:int y = (x++)+(++x)+(x*10);
                  //4+6+60
                  //x=5,6

 (2)赋值运算符
            A:=,+=,-=,*=,/=,%=等
            B:=叫做赋值运算符,也是最基本的赋值运算符
                  int x = 10; 把10赋值给int类型的变量x。
            C:扩展的赋值运算符的特点
                    隐含了自动强制转换。     s+=1不是等价于 s = s + 1;而是等价于 s = (s的数据类型)(s + 1);
 例:
    short s = 1;
    s = s + 1;
    
    short s = 1;
    s += 1;
    请问上面的代码哪个有问题?

解:第一个有问题:由于在s+1是为int时,赋值给short,会损失精度;第二个则会强制转换

(3)比较运算符
          A:==,!=,>,>=,<,<=
          B:无论运算符两端简单还是复杂最终结果是boolean类型。
          C:千万不要把==写成了=

             表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
                       算术表达式:a + b
                       比较表达式:a == b
 (4)逻辑运算符
          A:&,|,^,!,&&,||
          B:逻辑运算符用于连接boolean类型的式子
          C:结论
               &:有false则false
                |:有true则true
               ^:相同则false,不同则true。
           情侣关系。
                   !:非true则false,非false则true
   
                  &&:结果和&是一样的,只不过有短路效果。左边是false,右边不执行。
                   ||:结果和|是一样的,只不过有短路效果。左边是true,右边不执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值