我用java输入了一个字母
如何知道字符串字母是否等于字符数组我用java输入了一个字母,java,Java,如何知道字符串字母是否等于字符数组 String[] choose = {"a","d","t","b","s","f","x"}; String check; boolean error = false; System.out.print("Enter"); Scanner sn = new Scanner(System.in); check = sn.nextLine(); for (int i =
String[] choose = {"a","d","t","b","s","f","x"};
String check;
boolean error = false;
System.out.print("Enter");
Scanner sn = new Scanner(System.in);
check = sn.nextLine();
for (int i = 0 ; i < choose.length;i++){
if(choose[i] == check){
System.out.print("you entered" + choose[i]);
break;
}
}
String[]choose={“a”、“d”、“t”、“b”、“s”、“f”、“x”};
字符串检查;
布尔错误=假;
系统输出打印(“输入”);
扫描仪序列号=新扫描仪(System.in);
check=sn.nextLine();
for(int i=0;i
我所做的是,它没有确认我输入了字母a,但“you entered”没有显示。您无法使用
==
测试字符串是否相等。仅比较引用(内存地址)的。你需要使用。一般来说,=
是您在测试是否相等时最不想要的,除非您正在检查两个变量是否指向同一实例。这种情况很少发生,因为您通常对测试值是否相等感兴趣
因此,您需要做的是:
if(choose[i].equals(check)) {
...
}
您试图将字符串与==进行比较,它只比较引用,而不比较值。你想用的是
if(check.equals(choose[i]))