Java的基础语法(三): 运算符

7.运算符

定义: 对常量和变量进行操做的符号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;
相关文章
相关标签/搜索