我认为在Scala中我不需要明确地把#34;返回"在退货声明中。所以我有以下代码:
def checkSimple(str1: String, str2: String): Boolean = {
if (str1 > str2) {
println("str1 > str2")
true
}
println("str1 <= str2")
false
}
如果我使用checkSimple运行我的上述代码(&#34; 200&#34;,&#34; 150&#34;),我在下面得到了错误的结果:
str1 > str2
str1 <= str2
但是,如果我添加&#34;返回&#34;在&#34; true&#34;前面如下所示,一切正常:
def checkSimple(str1: String, str2: String): Boolean = {
if (str1 > str2) {
println("str1 > str2")
return true
}
println("str1 <= str2")
false
}
&#34;返回&#34;在return语句行中实际需要吗?
谢谢!
答案 0 :(得分:8)
最后一个表达式的值用作返回值:
def checkSimple(str1: String, str2: String): Boolean = {
if (str1 > str2) {
println("str1 > str2")
true
} else {
println("str1 <= str2")
false
}
}
将按您期望的方式行事