将用户输入字符与Scala中的字符进行比较
我试图将用户在本例中的输入X或Y与Scala中的字符进行比较。 我的代码如下:将用户输入字符与Scala中的字符进行比较,scala,input,char,Scala,Input,Char,我试图将用户在本例中的输入X或Y与Scala中的字符进行比较。 我的代码如下: var marker = 0 while (marker == 0) { val ans1 = scala.io.StdIn.readLine() println(ans1) if (ans1 == 'X') { marker = 1 } else if (ans1 == 'Y') { marker = 2
var marker = 0
while (marker == 0) {
val ans1 = scala.io.StdIn.readLine()
println(ans1)
if (ans1 == 'X') {
marker = 1
}
else if (ans1 == 'Y') {
marker = 2
}
else {
println("Faulty input. Please retry: X or Y?")
}
然而,我得到的结果总是错误的输入。请重试:X或Y?。
所以我想我的比较肯定有问题
尽管搜索了一下,我还是找不到问题。我试着将我正在比较的字符与朋友的建议进行比较,但这并没有解决问题。试试这个。字符串不等于if语句中的字符
val ans1 = scala.io.StdIn.readChar()
这是你的朋友。readLine返回一个字符串,字符串永远不等于字符。不管字符串是否只有一个字符,并且该字符就是您要比较的字符。-这里有很多选项,其中一个就是使用readChar。另一种方法是与字符串ans1==X进行比较。另一种方法是只取字符串的第一个字符,如ans1.head==X。