java基础3--运算符

算数运算

java中的算数运算包括 +、-、*、/、% 、++、- -

+ 的使用
1、 表示加法运算,如:int i = 3+5 ;
2、 用于字符串的连接 : +符号的两边至少有一边是字符串的时候才是连接,如
‘A’ + ‘B’ --> 131 、 String str = “Hello”+“World”;
3、 表示正数,一般省略不写

- 的使用
1、表示减法运算,:int i = 5-3 ;
2、表示负数

星号(*)的使用
1、表示乘法运算,:int i = 5*3 ;
2、表示通配符

/ 的使用
1、 表示除法运算
注意:System.out.println(10/3); // 打印的结果为3
原因: 10、3 都是int类型,表达式 10/3 的结果也是int类型

%的使用
1、% 表示取模(求余数)

System.out.println(10%1);
System.out.println(10%2);
System.out.println(10%3);
System.out.println(10%4);
System.out.println(10%5);
System.out.println(10%6);
System.out.println(10%7);
System.out.println(10%8);
System.out.println(10%9);
System.out.println(10%10);
System.out.println(10%11); 

++ 和 - -
1、解释概念
++ 表示自增; – 表示自减

2、回顾上面的其它的运算符(+、- 、* 、/)都是需要两个操作数,++ 和 - - 只需要一个操作数
注意:++和- - 只能够应用于变量,不能用于常量,如:5++; 是错误的写法;
int i = 3;
i++; 正确的写法

3、怎么用?
基本语法规则
int i = 3; // 表示把3赋值给变量i,此时i变量盒子中的数据就是3;
i++; // 表示变量i的值会在之前的值的基础上自动增加1,i的值此时是4,i++的值此时是3;
++i; // 表示变量i的值会在之前的值的基础上自动增加1,i的值此时是 5,++i的值此时是5;
i++和++i的区别:++在后,此时i++这个整体的值为i自增之前的值;++在前,此时++i这个整体的值为i自增之后的值。

赋值运算

赋值运算符包括 = 、+= 、 -= 、*= 、 /= 、 %=
赋值运算符表示把符号右边的值赋值给左边,运算优先级很低

int a = 6;	//	=赋值
a += 4;    // += 表示累加,表示在a原来的值(6)的基础上累加一个4 ,结果a的值为10,也可以看成是   a = a+4;
a -= 2;    // 理解同上,a的值为8   也可以看成是  a = a-2;
a *= 10   // 理解同上,a的值为80   可以看成是  a = a*10;
a /= 5    // 理解同上,a的值为16   可以看成是  a = a/5;
a %= 2   // 理解同上,a的值为0   可以看成是  a = a%2;	此前a的值为16,16除以2整除,余数为0,因此a%2的值为0

比较运算

比较运算符包括 == 、 != 、 > 、 < 、>= 、<=
1、 ==表示比较两个数据是否相等(不能用于比较字符串)
2、!= 表示比较两个数据是否不相等

逻辑运算

1、逻辑运算符有如下:
&: 逻辑与,相当于 and (并且) ,两边都为true结果为true
| : 逻辑或 ,相当于 or (或者) ,只要有一边为true,结果true
&& : 逻辑与(双与), 相当于 and ( 并且),两边都为true结果为true
|| : 逻辑或(双或),相当于 or( 或者) ,只要有一边为true,结果true
^ : 异或 ,两边不一样结果true,否则为false
! : 逻辑非,把true变成false,把false变成true

2、使用场景:
小明本次考试Java,JS
如果小明本次考试 Java 和 JS都是100分,奖励一台电脑;
如果小明本次考试 java 或者 JS 是100分,奖励源码时代代金券 5000元;
把上面的场景使用伪代码表示:

int java  = 100;
int js = 99;
//如果 java==100  并且 js == 100  > 奖励电脑
 if(java==100  &  js == 100)		> 奖励电脑
//如果 java==100  或者 js == 100  > 代金券5000
 if(java==100  |   js == 100)     > 代金券5000

逻辑运算符两边一般都是boolean类型 (非(!)只有一边)
3、逻辑运算的结果值类型 :boolean
4、 & 和 &&、| 和 ||
① &&、|| 只可以是逻辑运算
& 、| 可以是逻辑运算符也可以是位运算符
② && || 具有短路行为
什么时候会短路:如果左边的条件能够确定整个表达式的结果值,那么右边就不运算了
&& : 左边为false时,整个表达式必定为false,故右边的表达式就不需要再进行计算,这就是短路
|| : 左边为true短路,理解同上
③ 如何验证它短路了?
思路1: 可以在右边使用一些自增的语句,从结果来看值的变化
思路2: 右边部分中包含一个错误(异常),如(1/0==1)

三目运算

三目运算也被称为三元运算
语法格式:
X ? Y : Z
X:可以代表是boolean值,或者运算结果为boolean值的表达式
若X为true,那就返回Y值,若为false就返回Z的值
若你要以变量存储,那么Y与Z必须返回同种类型

注意:

  1. Y 和 Z可以是不同的数据类型
  2. 只有Y和Z数据类型相同时,才能被一个同类型的变量接收
  3. 三目运算可以嵌套使用
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值