Но с помощью case сделать это можно намного проще:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
switch (m) {
case 1: dayCount = 31;
break;
case 2: dayCount = 28;
break;
case 3: dayCount = 31;
break;
case 4: dayCount = 30;
break;
case 5: dayCount = 31;
break;
case 6: dayCount = 30;
break;
case 7: dayCount = 31;
break;
case 8: dayCount = 31;
break;
case 9: dayCount = 30;
break;
case 10: dayCount = 31;
break;
case 11: dayCount = 30;
break;
case 12: dayCount = 31;
break;
}
|
Если ни один из кейзов не выполнился, то можно задать группу операторов, которая выполнится по умолчанию:
1
2
3
|
switch (m) {
default: System.out.println("Error");
}
|
Кроме целочисленных значений, можно использовать и строковые, начиная с 7 JDK:
1
2
3
4
5
6
7
8
|
string month;
switch (month)
{
case "январь": dayCount = 31;
/*
И так далее
*/
}
|
Если не поставить оператор break в конце любой группы операторов, то выполнятся все группы оператором, начиная с той, где оператор case окажется истинным:
1
2
3
4
5
6
7
8
9
10
11
12
|
public class test {
public static void main(String[] args) {
int a = 0;
double b = (int) a;
switch (a)
{
case 2 : System.out.println(2);//не выполнится
case 0 : System.out.println(0);//выполнится
case 1 : System.out.println(1);//выполнится
}
}
}
|
|