我正在尝试通过搜索下面的数组的前两个名称来查找联系人,然后更新与该联系人关联的电话号码。在提供的代码中,我可以在外部循环中找到联系人的名字(strFirstName),但无法验证它是否与适当的姓氏(strLastName)相关联。即使在数组中,只要没有名字或姓氏的重复,我也希望我的编码能够匹配确切的记录。
找到适当的记录后,需要提示用户输入新的电话号码。我相信我可以弄清楚这部分,但是我乐于接受实现这一点的想法。
numContacts =数组中的行数
String [][] contactsArray = {
{"Emily","Watson","913-555-0001"},
{"Madison","Jacobs","913-555-0002"},
{"Joshua","Cooper","913-555-0003"},
{"Brandon","Alexander","913-555-0004"},
{"Emma","Miller","913-555-0005"},
{"Daniel","Ward","913-555-0006"},
{"Olivia","Davis","913-555-0007"},
{"Isaac","Torres","913-555-0008"},
{"Austin","Morris","913-555-0009"}
public static void updateContact(Scanner scanner, String[][] contactsArray, int numContacts) {
System.out.println("Updating contact");
System.out.print("Enter first and last name: ");
String strFirstName = scanner.next();
String strLastName = scanner.next();
for (int i=0; i < numContacts; i++){
System.out.println(i);
if (contactsArray[i][0].equals(strFirstName) ) {
for (int j = 0; j < 3;j++) {
System.out.println(j);
if (contactsArray[1][j].equals(strLastName) ) {
System.out.println("yes");
} else {
System.out.println("no");
}
}
}
}
}
提前感谢所有帮助您解决此问题的帮助。
我觉得您已接近解决方案。不幸的是,与姓氏的字符串比较是错误的。
实际上,您是在做contactsArray[i][0]
名字,这是正确的。但是,您正在contactsArray[1][j]
使用姓氏,这是不正确的。也许contactsArray[i][1]
更正确。
然后,您可以问自己是否真的需要第二个循环?您实际上只想查找给出名字和姓氏的记录。因此,您只需要一个循环即可遍历“记录”。
最后,如果实际找到了记录,则应该跳出循环,并打印“是”。如果循环后未找到任何内容,则应打印“ no”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句