Java运算符
Java运算符
温馨提示:本文仅适用于有一定Java代码编写基础人士回顾相关知识,讲解并不详述。如您希望通过代码回顾相关知识或了解相关用法,那么本文适用。
理论联系实际,只有通过实践,才能深入学习理论,以下通过代码及简单的注释概略关系运算符、逻辑运算符及短路运算符的使用和特点。
关系运算符
package com.javase.data_option;
/*
关系运算符:<、<=、==、>、>=、!=
1、关系运算符得到的是一个boolean,最终返回true或者false值
2、判断两个数字是否相等用“==”符号,注意“=”是赋值操作,不要用错!
*/
public class RelationalOperators {
public static void main(String[] args){
int a = 20;
int b = 30;
System.out.println("a>b?:"+(a>b)); // false
System.out.println("a>=b?:"+(a>=b)); // false
System.out.println("a<b?:"+(a<b)); // true
System.out.println("a<=b?:"+(a<=b)); // true
System.out.println("a==b?:"+(a==b)); // false
System.out.println("a!=b?:"+(a!=b)); // true
}
}
逻辑运算符
package com.javase.data_option;
/*
逻辑运算符:连接关系表达式的形成复杂的逻辑表达式,以此判断逻辑表达式是否成立。
逻辑与&:左右两边表达式同时为true最终结果才为true,否则为false。
逻辑或|:左右两边表达式只要一个为true结果就为true,否则为false。
逻辑异或^:左右两边表达式结果相同为false,不同为true。
逻辑非!:取反操作,单目运算符,true取反后为false,false取反后为true。只能应用于表达式、true或者false前。
*/
public class LogicalOperators {
public static void main(String[] args){
/* // 1、左边 & 右边 同时为true,最终结果才为true,否则为false
System.out.println("&并且:");
System.out.println(true&true); // true
System.out.println(true&false); // false
System.out.println(false&false); // false
//小试牛刀
System.out.println("小试牛刀:");
int a = 10;
int b = 20;
int c = 30;
System.out.println(a>b & b>c); // false & false -> false
System.out.println(a<b & b<c); // true & true -> true
System.out.println(a<b & b>c); // true & false -> false
System.out.println("-------------------------");
*/
/* // 2、左边 | 右边 只要一个为true,最终结果为true,否则为false
System.out.println("|或者:");
System.out.println(true|true); // true
System.out.println(true|false); // true
System.out.println(false|false); // false
//小试牛刀
System.out.println("小试牛刀:");
int a = 10;
int b = 20;
int c = 30;
System.out.println(a>b | b>c); // false | false -> false
System.out.println(a<b | b<c); // true | true -> true
System.out.println(a<b | b>c); // true | false -> true
System.out.println("-------------------------");
*/
// 3、左边 ^ 右边 结果相同为false,结果不同为true
System.out.println("^异或:");
System.out.println(true^true); // false
System.out.println(true^false); // true
System.out.println(false^false); // false
//小试牛刀
System.out.println("小试牛刀:");
int a = 10;
int b = 20;
int c = 30;
System.out.println(a>b ^ b>c); // false ^ false -> false
System.out.println(a<b ^ b<c); // true ^ true -> false
System.out.println(a<b ^ b>c); // true ^ false -> true
System.out.println("-------------------------");
// 4、逻辑非 !true->false !false->true
System.out.println("!逻辑非:");
System.out.println(!false); // true
System.out.println(!true); // false
System.out.println("小试牛刀:");
System.out.println(!(a<b)); // !true->false
System.out.println("-------------------------");
}
}
短路运算符
package com.javase.data_option;
/*
短路运算符:短路与&&、短路或||
&&:功能和&(一个为false即为false)一样,只不过具备短路功能。当左边为false时,右边不会再去执行,直接返回false结果。
||:功能和|(一个为true即为true)一样,只不过具备短路功能。当左边为true时,右边不会再去执行,直接返回true结果。
*/
public class ShortCircuitOperators {
public static void main(String[] args){
/* // 1、短路与&& 与 & 对比
int a = 10;
int b = 20;
int c = 10;
int d = 20;
System.out.println("逻辑与&:"); // & 左边和右边都会执行
System.out.println((a++ > 100)&(b++ <30)); // 10>100 false & 20<30 true ->false
System.out.println(a); // 11
System.out.println(b); // 21
System.out.println("短路与&&:"); // 左边为false 右边不会再执行
System.out.println((c++ > 100)&&(d++ <30)); // 10>100 false && ->false
System.out.println(c); // 11
System.out.println(d); // 20
*/
// 2、短路或|| 与 | 对比
int a = 10;
int b = 20;
int c = 10;
int d = 20;
System.out.println("逻辑或|:"); // | 左边和右边都会执行
System.out.println((a++ > 1)|(b++ >100)); // 10>1 true | 20>100 false ->true
System.out.println(a); // 11
System.out.println(b); // 21
System.out.println("短路或||:"); // 左边为true 右边不会再执行
System.out.println((c++ > 1)||(d++ >100)); // 10>1 true || ->true
System.out.println(c); // 11
System.out.println(d); // 20
}
}
加油!努力!千万不要放弃!