//位运算效率较高
public class Demo6 {
public static void main(String[] args) {
/*
* A = 0011 1100
* B = 0000 1101
*------------------------
* A&B = 0000 1100
* A|B = 0011 1101
* A^B = 0011 0001 //异或
* ~B = 1111 0010
* 2*8 = 16 2*2*2*2
* << >> //左移相当于乘2 右移相当于除2
* 0000 0000 0 (二进制) (十进制)
* 0000 0001 1
* 0000 0010 2
* 0000 0011 3
* 0000 0100 4
* 0000 1000 8
* 0001 0000 16
*/
System.out.println(2<<3); //结果为16 左移三位 每左移一位相当于乘2
//-----------------------------------------
int a = 10;
int b = 20;
a+=b;//a=a+b;
a-=b;//a=a-b;
System.out.println(a);
//------------------------------------------
//字符串连接符 +
System.out.println(a+b);
System.out.println(""+a+b);//1020
System.out.println(a+b+"");//30 如果字符串在前面它会把后面的连接起来,如果字符串在后面,前面的项依旧进行运算
//在 + 运算符两侧 只要有一方出现了String类型,它就会把另一个操作数或其他操作 数都转换为String类型再进行连接。
//-------------------------------------------
/*
* 三元运算符
* x ? y : z
* 如果x为true,则结果为y
* 如果x为false,则结果为z
*/
int score = 80;
String type = score < 60 ?"不及格" : "及格";
System.out.println(type);
}
}
Java位运算-字符串连接符-三元运算符
最新推荐文章于 2023-05-15 10:34:42 发布