【发布时间】:2026-01-25 12:30:01
【问题描述】:
for(int i=0; i<num.length; i++){
switch(num[i]/10){
case 10:
case 9:
aCount++;
break;
case 8:
bCount++;
break;
case 7:
cCount++;
break;
case 6:
dCount++;
break;
default: fCount++;
}
我想在单行中使用多个三元运算符而不是 switch 语句来缩短这段代码。有可能吗?
【问题讨论】:
-
真的很丑,但是有可能
-
是的,这是可能的。当您第一次需要对其进行更改时,您会讨厌自己,而与您一起工作的其他人会要求与除您之外的任何人一起工作,因为没有编写它的人几乎不可能理解它,但是如果你愿意承受这些后果,你可以做你所要求的。就个人而言,如果你在我的团队工作并且我参与了你的代码审查,我会拒绝多三元版本,因为它无法维护,并让你改回来。
标签: switch-statement conditional-statements shortcode conditional-operator short