[英]Simple Java program Arraylist
我正在嘗試制作一個簡單的程序,演示對象ArrayLists的用法。 我希望能夠輸入要存儲在對象中的詳細信息以及搜索和打印對象。
我正在學生班上做我的學生,並且已經開始了StudentTest班,但是我正在尋找輸入方面的幫助。
這是我到目前為止的內容:
package student;
public class Student {
private String studentName;
private String studentNo;
private String email;
private int year;
public Student() {
/**studentName = null;
*studentNo = null;
*email = null;
*year = -1;
*/
}
public Student(String nName, String nNum, String nEmail, int nYr) {
this.studentName = nName;
this.studentNo = nNum;
this.email = nEmail;
this.year = nYr;
}
public void setStudentName(String newStudentName) {
studentName = newStudentName;
}
public void setStudentNo(String newStudentNo) {
studentNo = newStudentNo;
}
public void setEmail(String newEmail) {
email = newEmail;
}
public void setYear(int newYear) {
year = newYear;
}
public String getStudentName() {
return studentName;
}
public String getStudentNo() {
return studentNo;
}
public String getEmail() {
return email;
}
public int getYear() {
return year;
}
}
}
package student;
import java.util.ArrayList;
import java.util.Scanner;
public class studentTest {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Student student1 = new Student();
Student student2 = new Student();
Student student3 = new Student();
Student student4 = new Student();
Student student5 = new Student();
}
}
查看Scanner的文檔。
從到目前為止在studentTest
完成的代碼來看,您似乎正在從用戶那里獲取所有輸入。
基本上,您需要循環輸入所有數據:
// create ArrayList
for (int i=0; i < 5; i++) {
String studentName = input.nextLine();
....
Student student = new Student();
student.setStudentName();
...
// add student to arraylist
}
我認為您將從我遺漏的部分中受益。
我認為他只想向學生類填充此類內容。
while(true){
Scanner input = new Scanner(System.in);
Student student1 = new Student();
int year= input.nextInt();
String studentName=input.nextLine();
studentNo=input.nextLine();
String email=input.nextLine();
student1.setStudentName(studentName);
student1.setStudentNo(studentNo);
student1.setEmail(email);
student1.setYear(year)
int year= input.nextInt();
String studentName=input.nextLine();
studentNo=input.nextLine();
String email=input.nextLine();
break; // at the last position
}
您可能要更新main方法,如下所示:
public static void main(String[] args) {
List<Student> students = new ArrayList<Student>();
Scanner input = new Scanner(System.in);
System.out.println("Enter number of students");
int countStudents = input.nextInt();
for(int i=0; i< countStudents; i++){
Student student = new Student();
System.out.println("Enter details for student"+i);
System.out.println("Enter name");
student.setStudentName(input.next());
System.out.println("Enter Number");
student.setStudentNo(input.next());
System.out.println("Enter email");
student.setEmail(input.next());
System.out.println("Enter year");
student.setYear(input.nextInt());
students.add(student);
}
//Your list of students is populated now
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.