java 逻辑运算符
&& 当且仅当两个操作数都为真,条件才为真。
|| 如果任何两个操作数任何一个为真,条件为真。
! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。
代码块: &&
public static void main(String[] args) {
logicalOperators();
}
/**
* && 逻辑运算符
* 都为true,则为true.
* 都为false,则为false.
* 一方为true,一方为false,则为false
*
*/
public static void logicalOperators(){
//一方为true,一方为false,则为false
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a && b));
//都为true,则为true.
boolean c = true;
boolean d = true;
System.out.println("c && d = " + (c && d));
//都为false,则为false.
boolean e = false;
boolean f = false;
System.out.println("e && f = " + (e && f));
}
运行结果:
代码块:&& || !
/**
* && || ! 简单理解三张运算符
*/
public static void logicalOperators2(){
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
运算结果:
代码块 || 逻辑运算符
/**
* 功能:|| 逻辑运算符的学习
*/
public static void logicalOperators3(){
String url = "http";
System.out.println("判断是否start with http: "+url.startsWith("http"));
System.out.println("判断是否start with https: "+url.startsWith("https"));
/**
* || 逻辑运算符:第一个条件为false,才判断第二个条件
* if 条件为true,则进入if语句中
*/
if(!url.startsWith("http") || !url.startsWith("https")){
System.out.println("第一个条件为false,则进入第二个条件的判断,第二个条件为true");
}
System.out.println();
url = "https";
System.out.println("判断是否start with http: "+url.startsWith("http"));
System.out.println("判断是否start with https: "+url.startsWith("https"));
/**
* || 逻辑运算符:第一个条件为false,才判断第二个条件,
* if 条件为true,则进入if语句中
* if 条件为false,则退出判断
*/
if(!url.startsWith("http") || !url.startsWith("https")){
System.out.println("第一个条件为false,进入第二个条件的判断,第二个条件为false");
}
System.out.println("if判断为false,退出判断");
System.out.println();
url = "tcp";
System.out.println("判断是否start with http: "+url.startsWith("http"));
System.out.println("判断是否start with https: "+url.startsWith("https"));
/**
* || 逻辑运算符:第一个条件为true,那么第二个条件不会再判断
* if 条件为true,则进入if语句中
*/
if(!url.startsWith("http") || !url.startsWith("https")){
System.out.println("第一个条件为true,不会再判断第二个条件");
}
System.out.println();
url = "http";
System.out.println("判断是否start with http: "+url.startsWith("http"));
System.out.println("判断是否start with https: "+url.startsWith("https"));
/**
* || 逻辑运算符:第一个条件为true,那么第二个条件不会再判断
* ! 取相反值
*/
if(!(url.startsWith("http") || url.startsWith("https"))){
System.out.println("第一个条件为true,!true为false,不会进入这个判断");
}
System.out.println("if判断为false,直接退出判断");
System.out.println();
url = "tcp";
System.out.println("判断是否start with http: "+url.startsWith("http"));
System.out.println("判断是否start with https: "+url.startsWith("https"));
/**
* || 逻辑运算符:第一个条件为false,第二个条件为false
* ! 取相反值
*/
if(!(url.startsWith("http") || url.startsWith("https"))){
System.out.println("第一、二个条件为false,!false为true,进入这个判断");
}
}
运算结果: