将嵌套的 if 语句转换为更优雅的 switch?
我怎样才能将这个嵌套的 if 语句转换为更具可读性和“优雅”的内容?
if(speed==0){
othvalue=0;
}else {
if(speed>value1864cmn){
othvalue=value1864cmn;
}else {
if(speed>value1746cmn){
othvalue=value1746cmn;
}else {
if(speed>value1628cmn){
othvalue=value1628cmn;
}else {
if(speed>value1510cmn){
othvalue=value1510cmn;
}else {
if(speed>value1392cmn){
othvalue=value1392cmn;
}else {
if(speed>value1274cmn){
othvalue=value1274cmn;
}else {
if(speed>value1156cmn){
othvalue=value1156cmn;
}else {
if(speed>value1038cmn){
othvalue=value1038cmn;
}else {
if(speed>value920cmn){
othvalue=value920cmn;
}
}
}
}
}
}
}
}
}
};
how can i convert this nested if statement to something more readable and 'elegant'?
if(speed==0){
othvalue=0;
}else {
if(speed>value1864cmn){
othvalue=value1864cmn;
}else {
if(speed>value1746cmn){
othvalue=value1746cmn;
}else {
if(speed>value1628cmn){
othvalue=value1628cmn;
}else {
if(speed>value1510cmn){
othvalue=value1510cmn;
}else {
if(speed>value1392cmn){
othvalue=value1392cmn;
}else {
if(speed>value1274cmn){
othvalue=value1274cmn;
}else {
if(speed>value1156cmn){
othvalue=value1156cmn;
}else {
if(speed>value1038cmn){
othvalue=value1038cmn;
}else {
if(speed>value920cmn){
othvalue=value920cmn;
}
}
}
}
}
}
}
}
}
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您不需要嵌套它,也不需要将其转换为 switch 语句。只需将
if
放在else
旁边即可。例如:
You don't need to nest this, nor convert it to a switch statement. Just put the
if
right next to theelse
.For instance:
// 我不知道优雅,但单步遍历数组非常快。
// I don't know about elegant, but stepping through an array is pretty quick.
您可以使用“匹配”构造:
You can use "match" construct: