2.2运算符
2.2.1算数运算符
| 符号 | 说明 | 示例 |
|---|---|---|
| + | 数学加法运算 | int i = 5+5; |
| - | 数学减法运算 | int i =1-6; |
| - | 负数 | int i = -96; |
| * | 数学乘法运算 | int i = 7*8; |
| / | 数学除法运算 | int i = 80/5; |
| % | 数学取余运算 | int i = 5%2; |
| ++ | 数学自增运算 | x++/++x |
| -- | 数学自减运算 | x--/--x |
package day_05_25;
/*
* ++:表示自增1
* x++和++x的区别
* x++:先赋值在运算---> x++先参与运算,在自行自加
* ++x:先运算在赋值--->++x先进行自加,在参与运算
*/
public class Demo_04 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 10;
int j = 30;
int c = ++j +(i++);
System.out.println(i);//11
System.out.println(c);//41
int a = 1;
int b = 10;
int g = (--a)+(a++)+(b--)+(b--)+(--b)+(a+b)+(++a)+(b--)-(a++);
//0 0 10 9 7 8 2 7 2
System.out.println(a);//3
System.out.println(b);//6
System.out.println(g);//41
}
}
2.2.2赋值运算符
| 符号 | 说明 | 示例 |
|---|---|---|
| = | 数学赋值 | int i = 2; |
| += | x += 2 | x= x+2; |
| -= | x -=2 | x=x-2; |
| *= | x*=2 | x=x*2; |
| /= | x/=2 | x=x/2; |
| %= | x%=2 | x=x%2; |
2.2.3关系运算符
| 符号 | 说明 | 示例 | 结果 |
|---|---|---|---|
| == | 相等于 | 1==2 | false |
| != | 不相等 | 1!=2 | true |
| 大于 | 1>2 | false | |
| >= | 大于等于 | 1>=0 | true |
| < | 小于 | 1<0 | false |
| <= | 小于等于 | 1<=1 | true |
package day_05_25;
public class Demo_06 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a = 10 ;
int b =20;
System.out.println(a==b);//结果为:false
System.out.println(a!=b);//结果为:ture
System.out.println(a>b);//结果为:false
System.out.println(a>=b);//结果为:false
System.out.println(a<b);//结果为:ture
System.out.println(a<=b); //结果为:ture
}
}
2.2.4逻辑运算符
| 符号 | 说明 | 解释 | 结果 |
|---|---|---|---|
| & | 与 T1 T2 | 有false则为fasle | fasle |
| | | 或 | 有true则为true | true |
| !(常用) | 非 | !true为false,!false为true | |
| 异或 | 相同则为false,不同则为true | ||
| &&(常用) | 短路与 | T1为false时,T2不需要判断。T1为true,T2还需判断 | |
| || | 短路或 | T1为true,T2不需要判断。T1为false,T2还需要判断 |
package day_05_25;
public class Demo_07 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=4;
int b=5;
int c=6;
//与 & 有假则为假,条件都要进行判断
System.out.println("--------逻辑与-------");
System.out.println((a>b)&(a>c));//fasle&false
System.out.println((a>b)&(a<c));//fasle&true
System.out.println((a<b)&(a<c));//true&true
System.out.println((a<b)&(a>c));//true&false
//或 / 有真则为真 条件都要进行判断
System.out.println("--------逻辑或-----------");
System.out.println((a>b)|(a>c));//fasle|false
System.out.println((a>b)|(a<c));//fasle|true
System.out.println((a<b)|(a<c));//true|true
System.out.println((a<b)|(a>c));//true|false
System.out.println("------异或-------");
System.out.println((a>b)^(a>c));//fasle^false
System.out.println((a>b)^(a<c));//fasle^true
System.out.println((a<b)^(a<c));//true^true
System.out.println((a<b)^(a>c));//true^false
System.out.println("------逻辑非-------");
System.out.println(!(a<b));//fasle
System.out.println(!!!(a>b));//true
System.out.println("--------短语与----------");
System.out.println((a>b)&&(a>c));//fasle
System.out.println((a>b)&&(a<c));//fasle
System.out.println((a<b)&&(a<c));//true&&true
System.out.println((a<b)&&(a>c));//true&false
System.out.println("--------短路或-----------");
System.out.println((a>b)||(a>c));//fasle||false
System.out.println((a>b)||(a<c));//fasle||true
System.out.println((a<b)||(a<c));//true
System.out.println((a<b)||(a>c));//true
}
}
2.2.5三目(元)运算符
当数据真或假的时候,返回一个结果
格式:关系表达式 ? 表达式1:表达式2;
组成部分 T(条件)?结果1:结果2;
执行流程:根据表达式的计算返回一个ture 还是false
如果是ture 就把表达式1作为结果
如果是false 就把表达式2作为结果
package day_05_25;
public class Demo_08 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 3;
int y =4;
int i = (x>y)?x:y;
System.out.println(i);//结果返回y,4
}
}