天天看点

java编程思想_006短路现象

短路现象:一旦能够明确无误的确定整个表达式的值,就不在计算表达式余下的部分。

&&有短路现象,一旦有一个表达式可以确定整个表达式的值,就不用计算余下的部分。

||没有短路现象,任何情况都要计算表达式的所有部分。

package com.wzs.thread;

public class Test6 {

	public static void main(String[] args) {
		boolean b1 = test1(0) && test2(3) && test3(2);
		System.out.println();
		boolean b2 = test1(5) || test2(1) || test3(2);
	}

	static boolean test1(int value) {
		System.out.println("test1:" + value);
		System.out.println("result:" + (value < 1));
		return value < 1;
	}

	static boolean test2(int value) {
		System.out.println("test2:" + value);
		System.out.println("result:" + (value < 2));
		return value < 1;
	}

	static boolean test3(int value) {
		System.out.println("test3:" + value);
		System.out.println("result:" + (value < 3));
		return value < 1;
	}
}
           

输出结果:

test1:0
result:true
test2:3
result:false

test1:5
result:false
test2:1
result:true
test3:2
result:true