逻辑运算符
短路运算:
public static void main(String[] args) {
///短路运算
int c = 5;
boolean d = (c < 4)&&(c++<4);
System.out.println(d); //false
System.out.println(c); //5
}
位运算
常见面试题:2*8=16 怎么运算效率最高?
使用位运算。2的二进制表示位0000 0010,左移3位得到0001 0000,即16。
<< *2 >> /2
System.out.println(2 << 3); //16
字符串连接符
String
常见面试题:以下两个式子输出的结果有什么区别?
System.out.println(""+a+b); //1020
System.out.println(a+b+""); //30
第一个表达式先转换成String类型,再拼接a和b。
第二个表达式先计算a+b=30, 再转换成字符串。
三元运算符
public static void main(String[] args) {
// x ? y : z
// 如果x==true, 则结果为y,否则结果为z
int score = 80;
String type = score < 60 ? "不及格":"及格"; //必须掌握
System.out.println(type);
}