У меня есть метод, который должен возвращать Int. Я пытаюсь понять, почему Eclipse не позволит мне скомпилировать это, хотя мне кажется очевидным, что внутри оператора if я действительно возвращаю Int. Есть ли что-то, что я пропускаю, очень очевидно? Я пытаюсь понять этот аспект Scala, прежде чем писать больше кода.
Вот способ:
def contains1(sfType: TokenType): Int = {
if (Tokens.KEYWORDS.contains(sfType)) {
val retVal = TokenTypes.RESERVED_WORD
}
}
Eclipse жалуется на строку 2 --- 'несоответствие типа; найдено: Требуемое устройство: Int "
TokenTypes is - public abstract interface org.fife.ui.rsyntaxtextarea.TokenTypes and RESERVED_WORD is - public static final int RESERVED_WORD = 6;
Я прочитал этот пост здесь: найдено: Требуется блок: Int - Как исправить это? и попытался решить проблему, прежде чем публиковать ее, но я все еще в убыток.
Изменить: метод должен возвращать Int, и я неверно набрал тип возвращаемого значения. Моя проблема остается прежней. Eclipse все еще жалуется.