1.赋值运算符
int a= 1;
int b=2;
//+=
a+=b;
System.out.println(a);
//-=
a-=b;
System.out.println(a);
// /=
a/=b;
System.out.println(a);
//*=
a*=b;
System.out.println(a);
// %=
a%=b;
System.out.println(a);
//=
a=b;
System.out.println(a);
2.算数运算符:
int a = 1;
int b = 2;
int c;
// +
c=a+b;
System.out.println(c);
// -
c=a-b;
System.out.println(c);
// *
c=a*b;
System.out.println(c);
// /
c=a/b;
System.out.println(c);
// %
c=a%b;
System.out.println(c);
// ++
c=a++;
System.out.println(c);//先赋值再自增
c=++a;
System.out.println(c);//先自增再赋值
// --
c=a--;
System.out.println(c);先赋值再自减
c=--a;
System.out.println(c);先自减再赋值
3.逻辑运算符:
//逻辑运算符
//第一个表达式为true 后面的表达式必然参与运算
System.out.println((4 < 5) && (4 > 5));//false
System.out.println((4 < 5) & (4 > 5));//false
//第一个表达式为false 后面的表达式没有必要运算了 &&: 短路与 推荐使用
System.out.println((5 < 4) && (10 > 1));//false
System.out.println((5 < 4) & (10 > 1));//false
//逻辑或
//第一个表达式为true 后面的表达式没有必要运算了
System.out.println((4 < 5) || (4 > 5));//true
System.out.println((4 < 5) | (4 > 5));//true
//第一个表达式为false 后面的表达式必然参与运算
System.out.println((5 < 4) || (10 > 1));//
System.out.println((5 < 4) | (10 > 1));
System.out.println(!((5 < 4) || (10 > 1)));
System.out.println((5 < 4) ^ (10 > 1));
4.比较运算符
//比较运算符
int a = 1;
int b = 2;
System.out.println(a>b);
System.out.println(a>=b);
System.out.println(a<b);
System.out.println(a<=b);
System.out.println(a!=b);
System.out.println(a==b);
//相同类型的变量 或者 相似类型的变量 才能比较
int num = 97;
char ch = 'a';
System.out.println(num == ch);
String str1 = "hello";
String str2 = "hello";//引用类型
System.out.println(str1 == str2);
//只要是new 这个数据 肯定在堆内存
String str3 = new String("hello");
System.out.println(str2);
System.out.println(str3);
System.out.println(str2 == str3);//false
//比较2个变量是否一致(==比较的都是内存地址值==)
//以后所有的引用数据类型数据比较 禁止使用==
//使用jdk提供的方法(功能)实现字符串数据的比较 字符串变量1.equals(字符串变量2)
System.out.println(str2.equals(str3));
System.out.println(str2!=str1);
5.三元运算符
数据类型 变量 = (表达式1boolean)?表达式2:表达式3;
结合表达式1的结果判断 true 获得的是表达式2的结果 否则 表达式3的结果
结果类型必然与表达式2/3一致或者相似。
//三元运算符 求3个变量的最值
//数据类型 变量 = (表达式1boolean)?表达式2:表达式3;
int a = 100, b = 2000, c = 101;
int max = ((a > b) ? a : b);
max = (max > c) ? max : c;
System.out.println(max);
//看精度最高的数据
int result = (int) ((5 > 1) ? 10 : 20.0);
System.out.println(result);