JAVA语言支持如下运算符
- 算术运算符: 、- 、* 、/ 、% (取余)、 、--
- 赋值运算符: =
- 关系运算符:>、< 、>=、<=、==(等于)、!=(不等于)
- 逻辑运算符:&&(与) 、 ||(或) 、!(非)
从代码中了解其含义
算术运算符( - * / %)
public class Demo01 {
public static void main(String[] args) {
//二元运算符 - * / %
int a = 10;
int b = 20;
int c = 31;
System.out.println(c%a);//1 %取余 31/10商3余1 反过来 10/31商0余本身10
System.out.println(a b);//30
System.out.println(c-b);//11
System.out.println(a*b c);//231
System.out.println(a/b);
//0 原本输出的结果应该是0.5,但因为a/b得到的是int类型的数,所以自动取整结果为0
System.out.println(a/(double)b);//0.5 正确写法
}
}
public class Demo02 {
public static void main(String[] args) {
long a = 11111111114444L;
int b = 123123;
short c = 12;
byte d = 2;
double e = 1.0;
System.out.println(a b); // a b为long类型
System.out.println(b c); // b c为int类型
System.out.println(c d); // c d为int类型
System.out.println(e d); // e d为double类型
//总结:基本类型运算时会自动向上转型,一般转型为参与运算的数中范围更大的类型,但有特例:byte short为int
}
}
算术运算符( --)
public class Demo03 {
public static void main(String[] args) {
// -- 自增,自减 一元运算符
int a = 3;
int b = a ; // a 就是 a = a 1 ,但是会先赋值再自增
int c = a; // a 也是 c = c 1 ,但是会先自增再赋值
System.out.println(b);//3
System.out.println(c);//5 a 之后a已经为4,在此基础上进行 a所以结果为5
//--同理
}
}
总结:先 和后 本质上都是在原有基础上 1,但先 会先进行自增再赋值,后加 则相反
赋值运算符(=)
public class Demo01 {
public static void main(String[] args) {
//赋值运算符=,a=b 意为将b的值赋给a
int a = 10;
int b = 20;
System.out.println(a=b); //20
}
}
关系运算符
public class Demo01 {
public static void main(String[] args) {
//关系运算符返回的结果是布尔值
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); // true
}
}
来源:https://www./content-1-755751.html
|