带有 if 语句的 ArrayList
ArrayList with if statements
我的任务是使用 ArrayList 创建一个简单的图灵测试。我知道如何创建 ArrayList,但我无法将它们连接到 if 语句以正确响应用户输入。此问题的示例如下。当用户输入 Frank 我想要第一个响应时,任何其他输入都应该产生另一个响应。但是,无论我输入什么,我所做的任何调整只会让一个或另一个出现。
List<String> names = new ArrayList<>();
names.add( "Frank" );
System.out.print( "Hello, what is your name? ");
names.add(scanner.next());
if( names.contains( "Frank" )) {
System.out.printf( "Nice to meet you, Frank. My name is John.\n" );
}
else {
System.out.printf( "What an interesting name. My name is John.\n");
}
**还有一个问题。对于第二个问题,我尝试使用 else if 语句。但是,当我用 else if 响应进行响应时,它每次都会给我 "I would have never guessed" 的最终 else 响应。
System.out.print("Where are you from? ");
states.add(scanner.next());
if (states.contains("Florida") || states.contains("florida")) {
System.out.println("So was I!\n");
} else {
if (states.contains("North Carolina") || states.contains("north carolina")) {
System.out.println("I hear that's a nice place to live.\n");
}
else {
System.out.println("I would have never guessed!");
}
}
尝试以下操作:
List<String> names = new ArrayList<>();
System.out.print( "Hello, what is your name? ");
names.add(scanner.next());
if(names.contains( "Frank" )){
System.out.printf( "Nice to meet you, Frank. My name is John.\n" );
}else{
System.out.printf( "What an interesting name. My name is John.\n");
}
我删除了将 Frank
添加到数组的部分。这样,根据您的输入,结果可能会有所不同。我仍然觉得您使用 ArrayList
有点奇怪。似乎只保存一个简单的变量就可以做同样的事情。
使用 ArrayList
但是您之前的答案可能会影响其他答案。
我的任务是使用 ArrayList 创建一个简单的图灵测试。我知道如何创建 ArrayList,但我无法将它们连接到 if 语句以正确响应用户输入。此问题的示例如下。当用户输入 Frank 我想要第一个响应时,任何其他输入都应该产生另一个响应。但是,无论我输入什么,我所做的任何调整只会让一个或另一个出现。
List<String> names = new ArrayList<>();
names.add( "Frank" );
System.out.print( "Hello, what is your name? ");
names.add(scanner.next());
if( names.contains( "Frank" )) {
System.out.printf( "Nice to meet you, Frank. My name is John.\n" );
}
else {
System.out.printf( "What an interesting name. My name is John.\n");
}
**还有一个问题。对于第二个问题,我尝试使用 else if 语句。但是,当我用 else if 响应进行响应时,它每次都会给我 "I would have never guessed" 的最终 else 响应。
System.out.print("Where are you from? ");
states.add(scanner.next());
if (states.contains("Florida") || states.contains("florida")) {
System.out.println("So was I!\n");
} else {
if (states.contains("North Carolina") || states.contains("north carolina")) {
System.out.println("I hear that's a nice place to live.\n");
}
else {
System.out.println("I would have never guessed!");
}
}
尝试以下操作:
List<String> names = new ArrayList<>();
System.out.print( "Hello, what is your name? ");
names.add(scanner.next());
if(names.contains( "Frank" )){
System.out.printf( "Nice to meet you, Frank. My name is John.\n" );
}else{
System.out.printf( "What an interesting name. My name is John.\n");
}
我删除了将 Frank
添加到数组的部分。这样,根据您的输入,结果可能会有所不同。我仍然觉得您使用 ArrayList
有点奇怪。似乎只保存一个简单的变量就可以做同样的事情。
使用 ArrayList
但是您之前的答案可能会影响其他答案。