簡體   English   中英

簡單的Java程序Arraylist

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM