这应该是一个针对 n 名员工的个人管理程序。有些方法提供特定的功能。我正在研究的方法对我来说非常复杂,因为它在方法创建之初起作用,但现在不起作用。
问题:该方法无法达到目的并无法提供搜索的姓名。即使这个名字存在,它也说不存在。
方法:
public static void search(String[] n, String[] lN, String[] addres) {
Scanner sc = new Scanner(System.in);
System.out.println("Please give the name: ");
String n = sc.nextLine();
System.out.println("Please give the last name: ");
String ln = sc.nextLine();
for (int i = 0; i < lN.length; i++) {
for (int j = 0; j < n.length; j++); {
if (ln.equals(nN[i]) && n.equals(vN[i])) {
System.out.println("The employee " + nn + " " + vn + " is existing");
} else {
System.out.println("We couldn't find this employee in our system");
break;
}
}
}
如果您有疑问,请随时提问。不知道吗?投票也许其他人有答案。 谢谢
最佳答案
程序当前正在查找第一个员工,如果第一个员工没有匹配的名字和姓氏,则程序打印出“未找到”并放弃搜索(使用 break
).
您可以做的是保留一个变量来告诉您是否找到了匹配的员工。如果循环后未找到匹配项,则打印出警告消息。
当您只需要一个 for 循环时,您还可以使用双 for 循环。
boolean found = false;
for (int i = 0; i < nN.length; i++) {
if (nn.equals(nN[i]) && vn.equals(vN[i])) {
System.out.println("Der/die Mitarbeier/Mitarbeiterin " + nn + " " + vn + " ist vorhanden");
found = true;
break;
}
}
if (!found) {
System.out.println("Dieser Name existiert im System nicht");
}
关于java - 在两个数组中查找值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61374315/