除了其他答案之外,即使在非常低的级别上,这两种方法也没有区别——它们被编译成相同的字节码:
boolean a=true, b=true, c=true, d=true, e=true, f=true, g=true;
0: iconst_1
1: istore_1
2: iconst_1
3: istore_2
4: iconst_1
5: istore_3
6: iconst_1
7: istore 4
9: iconst_1
10: istore 5
12: iconst_1
13: istore 6
15: iconst_1
16: istore 7
if(a && b && c && d && e && f && g) {}
18: iload_1
19: ifeq 45
22: iload_2
23: ifeq 45
26: iload_3
27: ifeq 45
30: iload 4
32: ifeq 45
35: iload 5
37: ifeq 45
40: iload 6
42: ifeq 45
if(a) if(b) if(c) if(d) if(e) if(f) if(g) {}
45: iload_1
46: ifeq 72
49: iload_2
50: ifeq 72
53: iload_3
54: ifeq 72
57: iload 4
59: ifeq 72
62: iload 5
64: ifeq 72
67: iload 6
69: ifeq 72