【问题标题】:Alternate to If...else-if替代 If...else-if
【发布时间】:2017-01-31 04:42:08
【问题描述】:

减少许多if...else-if 语句的代码行的最佳方法是什么。除了switch case

if(a>0 && a<=5){
a=5;
}
else if(a>5 && a<=10){
a=10;
}
else if(a>10 && a<=15){
a=15;
}
else if(a>15 && a<=20){
a=20;
}
.
.
.
.
.
else if(a>95 && a<=100)
a=100;
}

我浏览了很多帖子,但找不到可行的解决方案。

【问题讨论】:

  • 对于5 , 10 , 15 , ... , 100 ?
  • 如果您的实时数据没有规律的差异,您可以探索conditional switch statement
  • 哪种语言?
  • 问题是针对 Java 的

标签: java if-statement


【解决方案1】:
a = Math.ceil(a / 5.0) * 5;

这应该可以解决您的问题。使用您正在编程的任何语言的天花板函数。这是 java 中的文档:https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#ceil-double-

【讨论】:

  • 他的问题没有提供足够的信息,但我认为你对他所追求的猜测是正确的 - 和 +1 ;很好的答案。
【解决方案2】:

你的问题可能是这样的:

a = Math.ceil(a / 5.0)*5;

更多信息请查看floorceil

这些在java,我不知道你用的是什么语言,但可能有floorceil函数

【讨论】:

    猜你喜欢
    • 2013-09-16
    • 1970-01-01
    • 2018-03-29
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 2022-07-27
    • 2019-12-06
    相关资源
    最近更新 更多