Эти методы возвращают значимые результаты только для букв:
def nextLetter(letter: Char): Option[Char] = {
val validChars = ('a' to 'y') ++ ('A' to 'Y')
if (validChars contains letter) Some((letter + 1).toChar) else None
}
def nextLetter(letter: String): Option[String] = {
if (letter.length != 1) None
else nextLetter(letter(0)).map(_.toString)
}
println(nextLetter('a'))
println(nextLetter('b'))
println(nextLetter('z'))
println(nextLetter('1'))
println(nextLetter('A'))
println(nextLetter("A"))
println(nextLetter("AB"))