java如何打印存储在字符串中的多个值?
我需要帮助解决这个问题,看起来不像我想象的那么容易。我从早期的反馈中尝试了一些选择,但没有帮助。 问题是,当用户输入是这样的:我不知道输出应该显示在屏幕上:当然,先生 或者当用户输入像:I don know(我不知道)(我使用了upercase)时,输出应该是:当然,先生。 或者当用户输入像:idk(我不知道)时,输出应该是:当然,先生。 但这两件事都没有发生所以。。。救命
import java.util.Scanner;
public class Something{
static void Some(){
Scanner input = new Scanner(System.in);
String answer;
System.out.println("Hello Sir, what can I do for you?");
answer = input.nextLine();
String [] idk = {"I dont know", "i dont know", "idk"};
if(answer.equals(idk)) {
System.out.println("Sure Sir ");
} else {
System.out.println("Sir, anything?");
}
}
public static void main(String [] args) {
Some();
}
}
输入:I dont know
或i dont know
或idk
输出:Sir, anything?
# 1 楼答案
最好使用集合(
Set
或List
)来存储可接受答案的版本,然后使用方法Collection::contains
。此外,存储以小写字母书写的字符串,并将输入转换为小写字母可能也值得:# 2 楼答案