定义: 对常量和变量进行操做的符号spa
分类: 6大类---算术, 赋值, 比较, 逻辑, 位, 三元code
(1).算术运算符blog
+, -, *, / ,%, ++, --字符串
①. +号在Java中一共有3种做用: 正号, 加法运算, 字符串链接符class
②. / 获取商, 整数相除只能达到整数(若是想获得小数,必须把数据变成浮点型)变量
技巧: 把其中一个数变成小数, 则另外一个数在运算时会自动类型提高技巧
③. %获取余数(读法:取模)语法
栗子: a % b 当|a|<|b|,结果是 a; 当|a|=|b| or b的倍数,结果是 0; 当|a|>|b|,结果是 余数;
小拓展:
对于一个三位数num,获取它的每一位
个位: num%10
十位: num/10%10
百位: num/10/10%10
结论: %运算的结果的符号只有左边数据有关,与右边无关二进制
应用: 任何一个正整数%2, 结果不是0就是1, 以此可用来做为判断切换条件数据
④. ++(自加) 和 --(自减)运算
++: 对原有数据进行 +1;
--: 对原有数据进行 -1;
a.单独使用: 放在操做数的先后效果同样; b.参与运算使用: 放在操做数以前,则该数据先自增/自减,然后在参与运算; 放在操做数以后,则该数据先参与运算,再进行自增/自减;
注意:
数据进行++/--运算时,系统会默认加一个类型强制转换符
栗子:
byte b = 10;
b++;//该句等价于: b = (byte)(b+1);
(2).赋值运算符
基本: =
(左边必须是变量),把右边的数据赋值给左边
拓展: +=, -=, *=, /=, %=
把左边数据和右边数据做相应的运算后,再赋值给左边
栗子: a+=4; //至关于 a = a+4;
(3).关系运算符
==, !=, >, >=, <, <=
不管操做简单仍是复杂,关系运算符的计算结果都是boolean类型(true / false)
(4).逻辑运算符
&, |, ^, !, &&, ||
①. 基本用法:
a. 通常用于链接boolean类型的表达式或值 b. 表达式:用运算符把常量/变量链接起来符合Java语法的式子 栗子: 算术表达式: a + b 比较比较式: a == b
②. 特色:
逻辑与: &, and, 遇false则false; 逻辑或: |, or, 遇true则true; 逻辑异或: ^, 两边相同为false,两边不一样为true; 逻辑非: !, 非false则true,非true则false;
③. && 和 ||
&& 和 & 区别: 最终结果都同样; && 具备短路效果, 左边false则右边不执行 || 和 | 区别: 最终结果都同样; || 具备短路效果, 左边true则右边不执行
(5).位运算符
直接操做二进制, 暂且跳过, 往后再补...
(6).三元运算符
格式: ( 关系表达式 ) ? 表达式1 : 表达式2;
执行流程:
先判断关系表达式的结果是true仍是false:
true: 则赋予表达式1的值
false:则赋予表达式2的值
//求两个整数的最大值 int x = 10; int y = 20; int max = (x > y) ? x : y //求三个整数最大值 int a = 10; int b = 20; int c = 30; int temp = (a > b) ? a : b; int max = (temp > c) ? temp : c;