2012-10-15 1 views
0

J'essaie de créer un programme simple qui démontre l'utilisation de ArrayLists d'objets. Je veux être en mesure de saisir les détails à stocker dans les objets ainsi que de rechercher et d'imprimer des objets.Programme Java simple Arraylist

Je le fais sur les étudiants que j'ai mon cours d'étudiant et j'ai commencé ma classe studentTest mais je cherche de l'aide avec des commentaires pour commencer.

C'est ce que j'ai jusqu'à présent:

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(); 


    } 
} 
+5

Hey Rob, quelle est la question que vous vous posez? – Hbcdev

+3

Jusqu'à présent, vous devez lire ce http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html – kosa

+0

... et décider quelles fonctionnalités vous souhaitez fournir. Que voulez-vous faire exactement avec ArrayList? –

Répondre

-1

Vous pouvez mettre à jour la principale méthode comme ci-dessous:

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 
} 
+0

@Nagative Voter: S'il vous plaît laissez des commentaires pour aider à comprendre ce qui ne va pas? –

1

Jetez un oeil au document Scanner.

Depuis le code que vous avez déjà fait dans studentTest, il semble que vous prenez toutes les entrées de l'utilisateur.

Vous avez besoin essentiellement d'entrer toutes les données dans une boucle:

// create ArrayList 
for (int i=0; i < 5; i++) { 
    String studentName = input.nextLine(); 
    .... 

    Student student = new Student(); 
    student.setStudentName(); 
    ... 

    // add student to arraylist 
} 

Je pense que vous bénéficierez de remplir les bits que je l'ai laissé de côté.

+0

convenu merci :) – joe

0

Je pense qu'il veut juste remplir quelque chose comme la classe des étudiants cela.

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 
     }