【发布时间】:2020-11-14 22:07:40
【问题描述】:
我正在编写一个程序,它使用扫描仪获取用户输入并检查它是否以 y 或 Y 开头来执行操作。任何其他条目都将被视为错误并执行不同的操作。
Scanner scnr = new Scanner(System.in);
String userInput;
userInput = scnr.next().charAt(0);
if (userInput.equalsIgnoreCase("y"))
这是我此时的想法,但这不是我的完整代码。我知道 string 和 char 不兼容,但我不确定还能如何做到这一点。我也不只是想像这样在 if 语句中放置条目的多个变体
if (userInput.equalsIgnoreCase("y") || userInput.equalsIgnoreCase("yup"))
我希望这个问题有意义。我是编程和这个网站的新手,所以如果这很明显,我很抱歉!
【问题讨论】:
-
有没有理由不把字符当成char来比较呢?如果您只关心输入的第一个字符是“y”或“Y”,
myChar == 'y' || myChar == 'Y'就可以正常工作。 -
@ChrisGong 谢谢!我一直在寻找这个问题的答案很长时间,但由于某种原因我完全错过了那个帖子。我最终使用了 .substring(0,1).equalsIgnoreCase("Y") 并且它现在可以工作了!
标签: java