【发布时间】:2021-08-04 19:10:45
【问题描述】:
嘿,我正在尝试制作一个电话联系项目,我开始创建一个addContact() void,它在无限循环中接受 2 个输入名称和电话号码。我的问题是输入姓名后不输入电话号码。你能帮我么?下面是我的代码
import java.util.*;
public class Problem {
private final Scanner scanner = new Scanner(System.in);
private final ArrayList<String> contactNames = new ArrayList<>();
private final ArrayList<Integer> contactNumbers = new ArrayList<>();
private final HashMap<String, Integer> contactMap = new HashMap<>();
public void addContact() {
while (true) {
System.out.println("Enter a phone number");
int contactNumber = scanner.nextInt();
if (contactNumbers.contains(contactNumber)) {
System.out.println("This number is already given in your contacts");
break;
}
System.out.println();
System.out.println("Enter your contacts name");
String name = scanner.nextLine();
name = name.toLowerCase();
if(contactNames.contains(name)){
System.out.println("This name is already given in your contacts");
break;
}
contactNumbers.add(contactNumber);
contactNames.add(name);
contactMap.put(name, contactNumber);
System.out.println("Person is successfully added to your contacts, here is your all contacts below");
System.out.println(contactMap);
System.out.println("Do you want to quit? -> 1=yes, 2=no");
int quit = scanner.nextInt();
if(quit==1)
break;
}
}
public static void main (String[] args){
Problem a = new Problem();
a.addContact();
}
}
【问题讨论】:
标签: java loops while-loop hashmap java.util.scanner