关系运算符就是比较运算符,他就关心数值与数值之间的关系。
计算机只要你能看见的东西都是有数字组成。也就意味着他所有的东西都可以进行判断。
数值大小的比较,比较的是二进制。因为数值都是由二进制组成。
关系运算符是用来比较两个数值的关系,大于 ,小于, 等于, 大于等于 ,小于等于
public class T1{//关系运算符的说明实验
public static void main(String[] args) {
System.out.println(100>50);//关系运算符运算出来只有逻辑值true false
System.out.println(100<50);
System.out.println(100<50);
System.out.println(100<=50);
System.out.println(100>=50);
}
}
逻辑运算符 true(真) false(假)(与&& 或|| 非 !)//多条件组合
public class T1{//这是关于逻辑运算符&&的实验
public static void main(String [] args){//与必须满足两个值才行,如果其中一个值为false那他就是false
System.out.println(100>50/* 这里的两个关系值就是条件*/&&52>20);
System.out.println(100<50&&20<65);
//这里有个隐藏格式他的第一个值为false他就是false,没必要往下看了
public class T1{//这是一段说明 ||与的实验
public static void main(String[] args) {
System.out.println(100>20||20>30);//与只要满足一个值就行,也可以理解为或者
System.out.println(20<10||100>10);//他的隐藏格式是如果第一个值为true 他就不会往下看因为只要有一个为true他就成立
}
}
public class T1{//这是一个关于非(!)的实验
public static void main(String[] args) {
System.out.println(!(100==100));//真变成假
}
}
位运算符:(可学可不学,除非做位上的操作,位指的就是二进制,二进制就是 0(false) 1(true) )
public class T1{//位运算符的说明实验
public static void main(String[] args) {
System.out.println(3&1);//3二进制(0000 0011) 1二进制(0000 0001)位上面对应的值必须一样
System.out.println(2|1);//2二进制(0000 0010)1二进制(0000 0001)位上的运算符只要满足一个相同或为1就行
System.out.println(~5);//整数变负数高位为1 结果-6(因为正数二进制从0开始 负数从1开始)
System.out.println(2^5);//不相等 2 (0000 0010) 5 (0000 0101) 0000 0111
System.out.println(3>>2);// 无符号向左移(0000 0011) (0000 1100)相当于成法*4
System.out.println(3<<2);//无符号向右与(0000 0011) (0000 0000)相当于除法
System.out.println(5<<<2);//(0000 0101) 这里不要用用不好正数会变成负数(536870917)这里要移是所有都要移2位包括高位(-2147483643)
}
}
优先级:
{}()
++ -- !* / %
+ -
< <= > >=
== !=
&&
||
%= /= *= -= += (赋值运算符)=