05 运算符 位运算 案例

运算符

  • 算术运算法:+,-,*,/,%,++,–
  • 复制运算符:=
  • 关系运算符:>,<,>=,<=,==,!= instanceof
  • 逻辑运算符:&&,||,!
  • 位运算符:&,|,^,~,>>,<<,>>>
  • 条件运算符:?:
  • 扩展赋值运算符:+=,-=,*=,/=
// 与(and)	或(or)	非(取反)
boolean a = true;
boolean b = false;

// 逻辑与运算:两个变量都为真,结果才为true
System.out.println("a && b"+(b&&a));
// 逻辑或运算:两个变量有一个为真,则结果才为true
System.out.println("a || b"+(b||a));
// 如果是真,则变为假,如果是假则变为真
System.out.println("!(a && b)"+!(b&&a));

位运算:

	A = 0011 1100
	B = 0000 1101
---------------
    A&B = 0000 1100		// 两个为1才为1,其余为0
    A|B = 0011 1101		// 有1就为1,其余为0
     ~B = 1111 0010		// 取反
---------------    
// 左移(<<)和右移(>>)
        二进制				十进制
        0000 0000			0
        0000 0001			1
        0000 0010			2
        0000 0100			4
        0000 1000			8
        0001 0000			16
        // 2左移三位,输出16
        System.out.println(2<<3);
		// 由此可知:
				左移(<<)一位就是	*2
                右移(>>)一位就是	/2
        // 位运算,效率极高
	// 字符串连接符
	int a = 10;
	int b = 20;
	a+=b;	// a = a+b
	a-=b;	// a = a-b

	// 字符串连接符	+	, String
	System.out.println(""+a+b);	// 输出1020
	System.out.println(a+b+"");	// 输出30
// 三元运算符
// x ? y :z
// 如果x==true,则结果为y,否则结果为z

int score = 80;
String type = score < 60 ? "不及格":"及格";// 必须掌握
// 打印及格

posted @ 2022-03-06 01:33  千寻简  阅读(21)  评论(0编辑  收藏  举报