目录
优先级
运算符优先级
优先级 | 运算符 | 运算 | 结合关系 | 举例 |
1 | + | 单目取正 | 自右向左 | a*+b |
1 | - | 单目取负 | 自右向左 | a*-b |
2 | * | 乘法 | 自左向右 | a*b |
2 | / | 除法 | 自左向右 | a/b |
2 | % | 取余 | 自左向右 | a%b |
3 | + | 加法 | 自左向右 | a+b |
3 | - | 减法 | 自左向右 | a-b |
3 | + | 字符串连接 | 自左向右 | "hello"+"Java!" |
4 | = | 赋值 | 自右向左 | a=b |
代码举例
public class Main {
public static void main(String[] args) {
int a=2;
int b=-3;
String c="hello ";
String d="Java!";
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);
System.out.println(a-b);
System.out.println(c+d);
}
}
运行结果
强制类型装换
(类型)值
如:double转换成int
public class Main {
public static void main(String[] args) {
double a=1.9087;
System.out.println((int)a);
}
}
强制类型转换只是从那个变量计算出了一个新的类型的值,它并不改变那个变量,无论是值还是类型它都不改变。