尝试从扫描仪获取数据并将其传递给将数据与数组进行比较的函数,但是当我发送扫描仪接收到的数据时,它不会进行比较。
扫描类
Key.use(scan.nextLine().toString(), retrievedkey);在数组中迭代以将第一个参数与数组进行比较的Key函数
public static void use(String door, String[][] key){
var arraylength = key[1].length;
for (int i = 0; i<=arraylength;){
i++;
if (door == key[1][i]) {
canOpen = true;
System.out.println(canOpen);
}
else {
canOpen = false;
System.out.println(canOpen + " " + door + " " + Arrays.toString(key[1]));
}
return;
}
}
}当将数据与扫描函数分开发送时,键函数可以工作。例如:
Key.use("Front door", retrievedkey)但是扫描仪将输入打印为"door“,但函数并没有读取。有什么帮助吗?谢谢。
发布于 2021-04-17 02:15:00
if (door == key[1][i]) {
canOpen = true;
System.out.println(canOpen);
}你应该用
if (door.equals(key[i][1]))而不是
if (door == key[1][i])中不需要使用toString()方法
Key.use(scan.nextLine().toString(), retrievedkey);因为nextLine()读取字符串作为输入。
https://stackoverflow.com/questions/67133906
复制相似问题