if语句没有else或者是else?

时间:2017-01-17 22:31:06

标签: r if-statement

我在解释条件时遇到一些麻烦。如果我想评估这种情况,哪种方法会更好?我使用这种方法分享了一些代码:

## Option 1
k1=2

a = "k1 is less than or equal 1"
if(k1 > 1) {
  a = "k1 is greater than 1"
}
print(a)

但我的直觉就是做这样的事情:

## Option 2
if(k1 > 1) {
  a = "k1 is greater than 1"
} else {a = "k1 is less than or equal 1"}
print(a)

使用选项1是否有任何危险?基本上我在这里问的是什么是最好的做法,哪个选项更严格?

2 个答案:

答案 0 :(得分:2)

使用选项1没有任何危险,因为它的工作方式与选项2一样好。else语句只允许在k1小于或等于1时运行一段代码。

在少数情况下,选项2并非如此必要,特别是如果您只关心条件是否正确。例如,

 if(today's date == birthday){

    System.out.println("Happy Birthday!");

} // no need for an else statement unless you want print out "today is not your b-day" 

答案 1 :(得分:1)

使用option1没有太大的危险,option2更好,因为它允许其他人更快/更容易理解代码,因为它更容易阅读。而且,option1有时会给复杂的代码带来错误。 但在这种情况下,两种选择都很好。