如何在Java中生成x=y或z语句
在我的程序中,我有一个名为yesOrNo的字符串,它是一个键盘输入。我创建了一个if语句来测试yesOrNo是否为以下之一:“Y”、“Y”、“Yes”, 使用| |运算符选择“是” 我收到错误消息:参数类型java.lang.String、java.lang.String的运算符| |未定义。这样做的正确方式是什么?谢谢如何在Java中生成x=y或z语句,java,if-statement,Java,If Statement,在我的程序中,我有一个名为yesOrNo的字符串,它是一个键盘输入。我创建了一个if语句来测试yesOrNo是否为以下之一:“Y”、“Y”、“Yes”, 使用| |运算符选择“是” 我收到错误消息:参数类型java.lang.String、java.lang.String的运算符| |未定义。这样做的正确方式是什么?谢谢 Scanner keyboard = new Scanner(System.in); String yesOrNo = keyboard.nextLine();
Scanner keyboard = new Scanner(System.in);
String yesOrNo = keyboard.nextLine();
System.out.println(yesOrNo + "?" );
if (yesOrNo.equals("Y" || "y" || "Yes || "yes")){
像这样:
if (yesOrNo.equals("Y") || yesOrNo.equals("y") || yesOrNo.equals("Yes") || yesOrNo.equals("yes")){
//...
}
尝试:
我能想到的最短的是:
if (yesOrNo.equalsIgnoreCase("Y") || yesOrNo.equalsIgnoreCase("Yes"))
您的语法无效。它需要有单独的条款:
if(yesOrNo.equals("Y") || yesOrNo.equals("y")...)
或者,如果使用正则表达式,则会更干净:
if(yesOrNo.matches("Y|y|Yes|yes")) {
// Code.
}
额外阅读
- 你应该看看地图。他们详述了各种有用的东西
- 仔细阅读。它使复杂的
比较非常简单字符串
- 最后,看看不同的语法,看看您可以用正确的语法形成什么样的逻辑语句
等于:
if (yesOrNo.equals("Y") ||
yesOrNo.equals("y") ||
yesOrNo.equals("Yes") ||
yesOrNo.equals("yes")) {
//...
}
或者,您可以创建一个可接受答案的列表,并检查答案是否在该列表中
List<String> kindOfYes = Arrays.asList("yes", "y", "okay", "righto");
if (kindOfYes.contains(yesOrNo.toLowerCase())) { ...
List kindOfYes=Arrays.asList(“yes”、“y”、“ok”、“righto”);
如果(kindOfYes.contains(yesOrNo.toLowerCase()){。。。
下一个代码是什么
String yesOrNo = keyboard.nextLine();
if (yesOrNo.toLowerCase().charAt(0) == 'y') {
//
}
注意:你认为有更快的方法吗?我认为没有。你的程序语法是错误的 这是正确的:
Scanner keyboard = new Scanner(System.in);
String yesOrNo = keyboard.nextLine();
System.out.println(yesOrNo + "?" );
if(yesOrNo.equals("Y") || yesOrNo.equals("y") || yesOrNo.equals("Yes") || yesOrNo.equals("yes")) {
啊!我想知道你是否可以做一些可以忽略大写的事情。谢谢。嘿@LuiggiMendoza你真的认为用户会写这样的东西吗?顺便问一下,向秘鲁致意。我期待用户的任何东西,请看。谢谢问候:),向墨西哥人民致意。请提供更详细的解释,说明这是如何工作的呃,不仅仅是发布代码。谢谢。我会查看这些链接。
List<String> kindOfYes = Arrays.asList("yes", "y", "okay", "righto");
if (kindOfYes.contains(yesOrNo.toLowerCase())) { ...
String yesOrNo = keyboard.nextLine();
if (yesOrNo.toLowerCase().charAt(0) == 'y') {
//
}
Scanner keyboard = new Scanner(System.in);
String yesOrNo = keyboard.nextLine();
System.out.println(yesOrNo + "?" );
if(yesOrNo.equals("Y") || yesOrNo.equals("y") || yesOrNo.equals("Yes") || yesOrNo.equals("yes")) {