dww*_*n66 4 java switch-statement
我正在尝试简化Card类,我想知道是否有任何方法可以在switch语句中使用一系列值?
考虑:
if((card<14))
suit="Hearts";
else
if((card>14)&&(card<27))
suit="Clubs";
etc.
Run Code Online (Sandbox Code Playgroud)
相反,我想使用switch语句,例如:
switch(card){
case1: through case13:
suit="Hearts";
break;
etc.
Run Code Online (Sandbox Code Playgroud)
我无法在Java教程中找到任何表明存在切换变化的内容.但是有吗?
关于你能做的最好的事情是这样的(见下文).所以在某些情况下(没有双关语:)),使用if语句会更好.
switch(card){
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
case 11:
case 12:
case 13:
suit="Hearts";
break;
}
Run Code Online (Sandbox Code Playgroud)
但是,您可以考虑的另一种方法是使用地图.
Map<Integer, String> map = new HashMap<Integer, String>();
for (int i = 1; i <= 14; ++i) {
map.put(i, "Hearts");
}
for (int i = 15; i <= 26; ++i) {
map.put(i, "Clubs");
}
Run Code Online (Sandbox Code Playgroud)
然后你可以使用地图查看卡片的套装.
String suit1 = map.get(12); // suit1 will be Hearts after the assignment
String suit2 = map.get(23); // suit2 will be Clubs after the assignment
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8803 次 |
| 最近记录: |