007 运算符

第二章 运算符
1.算术运算符
运算符:
	进行特定操作的符号
表达式:
	用运算符连接起来的
算术运算符包括
+加法运算, 字符串连接运算
-减法运算
*乘法运算
/除法运算
%取模运算, 两个数字相除取余数
++,–自增 自减运算
public class Demo1{
	public static void main(String[] args){
		20+30.sout;
	}
}
对于一个整数表达式来说 除法用的是整数 整数除以整数
结果仍然是整数 只看商 不看余数
取模: % 只获取 余数 
注意事项:
	一旦运算当中有不同类型的数据 那么运算结果类型将会是数据类型范围大的那种
1.+的用法
四则运算的+ 3中常见用法:
1.对于数值来说就是加法
2.对于char类型来说 在计算前 被提升为int然后再运算
3.对于String来说 +代表字符串连接操作
	任何数据类型与字符串连接起来都会变成字符串
main{
	sout."hello"+"world";
	//优先级
	//"hello20"+30
	//"hello2030"
	//记住小括号就行
	sout."hello"+20+30;
}
2.自增 自减运算符
自增运算符:++ 使一个变量涨一个数字1
自减运算符:-- 使一个变量降一个数字1
使用格式:
	++n n++
使用方式:
	单独使用:
		++n n++ 两种情况没有任何区别
	混合使用:
		例如与赋值操作 或者与打印操作混合
		++n n++有重大区别
		如果是++n 这个变量立刻马上+1 然后拿着结果使用
		如果是n++ 那么使用变量本来的数值 然后再让变量+1
public class Demo2{
	public static void main(String[]args){
        int a = 10;
        int b = 20;
        int r = ++a + b--;
        a.sout;
        b.sout;
	}
}
注意事项:
	1.只有变量使用自增 自减  常量不可以使用++ --
2.赋值运算符
赋值运算符包括
=等于号
+=加等于
-=减等于
*=乘等于
/=除等于
%=取模等
就是将符号右边的值 赋给左边
public class Demo3{
	public static void main(String[] args){
		int a = 10;
		a += 5;//a = a+5;
		a.sout;
		int x = 10;
		x%=3;
		x=x%3;
		x.sout;
	}
}
+=  a+=1 相当于 a = a+1
-=	b-=4 相当于 b = b-4
%=  c%=7 相当于 c = c%7
注意事项:
	1.只有变量 进行赋值运算符 常量不能进行赋值
	2.复合赋值运算符其中隐含了一个强制类型转换
		byte n = 5;
		//n=n+5;
		//n=byte+int
		//n=int+int
		//n=int
		//n=(byte)int 
		n+=5;
3.比较运算符
比较运算符
==比较符号两边数据是否相等, 相等结果是true
<比较符号左边的数据是否小于右边的数据 如果小于结果是true
>比较符号左边的数据是否大于右边的数据 如果大于结果是true
<=比较符号左边的数据是否小于等于右边的数据 如果小于等于结果是true
>=比较符号左边的数据是否大于等于右边的数据 如果大于等于结果是true
!=不等于 如果符号两边数据不相等 结果是true
比较运算符是两个数据之间进行比较的运算
运算结果都是布尔值 true false
注意事项:
	如果进行多次判断不能连着写
4.逻辑运算符
逻辑运算符
&&与(并且)
||或(或者)
!非(取反)
逻辑运算符连接两个boolean值
短路:
	&& || 具有短路效果:
	如果根据左边已经可以判断得到最终结果 那么右边的代码将不再执行
	从而节省一定的性能
	main{
		int a = 10;
		//false && ... 右边代码不执行了 a仍然是10
        3>4 && ++a<100.sout;
        
        int b =20;
        //true || ...右边代码不执行了 b仍然是20
        3<4 || ++b<100.sout;
	}
注意事项:
	1.逻辑运算符只能用于boolean值
	2.&& || 如果有多个条件 可以连写
	
5.三元运算符
一元运算符:
	! ++ --
二元运算符:
	+ - * / % = 
三元运算符
	需要三个数据才能运算的
	变量名称 = 条件判断 ? 表达式a : 表达式b;
    流程:
    	首先判断条件是否成立:
    	如果true 选左边表达式a
    	如果flase 选右边右边表达式b
public class Demo {
	public static void main(String[] args){
		int a = 10;
		int b = 20;
		//变量名称 = 条件判断 ? 表达式a : 表达式b;
		int max = a>b ? a:b;
		max.sout;
        
        //int r = 3>4?2.5:10;//错误
        //a>b?a:b;
	}
}
注意事项:
	1.必须同时保证表达式a和表达式b都符合左侧数据类型的要求
    2.三元运算符的结果必须使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值