1
2
3
4
5
6
7
8 package com.puppycrawl.tools.checkstyle.checks.metrics.npathcomplexity;
9
10
11 public abstract class Example1 {
12 final int a = 0;
13 int b = 0;
14
15 public void foo() {
16
17 if (a > 10) {
18 if (a > b) {
19 buzz();
20 } else {
21 fizz();
22 }
23 } else {
24 buzz();
25 }
26 }
27
28 public void boo() {
29
30 for(int i = 0; i < b; i++) {
31 switch(i) {
32 case a:
33
34 print(f(i) && g(i) ? fizz() : buzz());
35 default:
36
37 print(f(i) || g(i) ? fizz() : buzz());
38 }
39 switch(i - 1) {
40 case a:
41 print(f(i) && g(i) ? fizz() : buzz());
42 default:
43 print(f(i) || g(i) ? fizz() : buzz());
44 }
45 switch(i + 1) {
46 case a:
47 print(f(i) && g(i) ? fizz() : buzz());
48 default:
49 print(f(i) || g(i) ? fizz() : buzz());
50 }
51 }
52 }
53
54 public abstract boolean f(int x);
55 public abstract boolean g(int x);
56 public abstract String fizz();
57 public abstract String buzz();
58 public abstract void print(String str);
59 }
60