Java 斯卡拉:“我的朋友。”;“显式返回”;必修的?

Java 斯卡拉:“我的朋友。”;“显式返回”;必修的?,java,scala,boolean,return,Java,Scala,Boolean,Return,我认为在Scala中,我不需要在return语句中显式地添加“return”。因此,我有以下代码: def checkSimple(str1: String, str2: String): Boolean = { if (str1 > str2) { println("str1 > str2") true } println("str1 <= str2") false } def checkSimple(st

我认为在Scala中,我不需要在return语句中显式地添加“return”。因此,我有以下代码:

  def checkSimple(str1: String, str2: String): Boolean = {

    if (str1 > str2) {
      println("str1 > str2")
      true
    }

    println("str1 <= str2")
    false
  }
def checkSimple(str1:String,str2:String):布尔={
如果(str1>str2){
println(“str1>str2”)
真的
}
println(“str1-str2”)
返回真值
}

println(“str1最后一个表达式的值用作返回值,因此:

  def checkSimple(str1: String, str2: String): Boolean = {
    if (str1 > str2) {
      println("str1 > str2")
      true
    } else {
      println("str1 <= str2")
      false
    }
  }
def checkSimple(str1:String,str2:String):布尔={
如果(str1>str2){
println(“str1>str2”)
真的
}否则{

println(“str1编译器如何知道您的意图是在if语句中返回
true
?有时
-Xlint
会警告此类错误。但FSR它甚至不会警告
def g(i:Int,j:Int)={if(i
。它会警告
def={true;false}
  def checkSimple(str1: String, str2: String): Boolean = {

    if (str1 > str2) {
      println("str1 > str2")
      return true
    }

    println("str1 <= str2")
    false
  }
  def checkSimple(str1: String, str2: String): Boolean = {
    if (str1 > str2) {
      println("str1 > str2")
      true
    } else {
      println("str1 <= str2")
      false
    }
  }