如何讀取用戶輸入,一次一行地創建對象。然後進入一個ArrayList?正如你所看到的,當我輸入這個名字時,它會分解它,只存儲姓氏。或者如果我這樣做:中間名,它存儲中間名和姓氏。如何將多字輸入讀入一個字符串?
我第一次輸入名稱,首先調用搜索方法,以查看該名稱是否已存在於ArrayList中。這工作正常。如果名稱不在列表中,搜索將返回空值。然後提示輸入和添加方法。
case 1: {
System.out.print("Enter the Students name: ");
String nameSearch = kbd.next();
Student stu = dc.search(nameSearch);
if (stu != null) {
System.out.println(stu);
}
else {
System.out.print("Enter name AGAIN: ");
String nameAdd= kbd.nextLine();
System.out.print("Enter grade (freshman, sophomore, junior, senior: ");
String categoryAdd = kbd.nextLine();
System.out.print("Major: ");
String majorAdd = kbd.nextLine();
System.out.print("Enter graduating year: ");
int yearAdd = kbd.nextInt();
System.out.print("Enter student ID: (xxxx.xxxx: ");
double idAdd= kbd.nextDouble();
dc.add(nameAdd, categoryAdd , majorAdd ,
yearAdd , idAdd);
}
break;
}
我輸入:
Enter the Students name: John Smith
Not Found(Search Method)
TEST
Enter name AGAIN: TEST2
Enter grade (freshman, sophomore, junior, senior: senior
Major: Computer Science
Enter graduating year: 2013
Enter student ID: 1234.4567
它是如何存儲對象內部當我打印的ArrayList:
Name: Smith
Grade: senior
Major: Computer Science
Graduating Year: 2013
Student ID: 1234.4567
add方法:
public Student add(String name, String grade,
String major, int year, double id) {
Student newStu = new Student(addName, addGrade, addMajor, addYear, addId);
studentList.add(newStu);
System.out.println("Added!");
return null;
}
什麼是kbd?它不清楚從問題 – Lokesh 2013-04-07 06:19:53
@loki掃描儀kbd =新的掃描儀(System.in); – trama 2013-04-07 06:21:48
爲什麼要指定如果你只返回'null'就返回'Student'? – Makoto 2013-04-07 07:09:43