Witam
Jestem studentem informatyki i ostatnio zacząłem naukę języka Java. Ostatnio dostałem zadanie o takiej treści:
Stwórz klasę opisującą studenta (imię, nazwisko, numer indeksu), a następnie stwórz jej tablicę obiektów.
Napisałem taki kod programu:
package zadania_lab7;
import java.util.ArrayList;
public class Student {
//deklaracja zmiennych.
String name , pastName;
int indexNumber;
//stwożenie konstruktora.
public Student(String name , String pastName , int indexNumber) {
this.name = name;
this.pastName = pastName;
this.indexNumber = indexNumber;
}
//Metody ustawia i zwracania.
public void setname(String n)
{
name = n;
}
public String getname()
{
return name;
}
public void setpastName(String p)
{
pastName = p;
}
public String getpastName()
{
return pastName;
}
public void setindexNumber(int i)
{
indexNumber = i;
}
public int getindexNumber()
{
return indexNumber;
}
//metoda Main
public static void main(String[] args) {
//deklaracja ArrayList.
ArrayList<Student> dane = new ArrayList<Student>();
// Stworzenie i wyświetlenie listy obiektów klasy Student.
dane.add(new Student (" Michał " , " Niedzielski " , 96148));
dane.add(new Student (" Jan " , " Kowalski " , 96147));
dane.add(new Student (" Jan " , " Nowak " , 96146));
dane.add(new Student (" Adam " , " Mickiewicz " , 96145));
dane.add(new Student (" Tomek " , " Kowalewski " , 96144));
for(Student x:dane) {
System.out.println("Imię pierwszego Studenta to: " + x.getname());
System.out.println("Nazwisko pierwszego Studenta to: " + x.getpastName());
System.out.println("Numer indeksu pierwszego Studenta to: " + x.getindexNumber());
System.out.println("Imię drugiego Studenta to: " + x.getname());
System.out.println("Nazwisko drugiego Studenta to: " + x.getpastName());
System.out.println("Numer indeksu drugiego Studenta to: " + x.getindexNumber());
System.out.println("Imię trzeciego Studenta to: " + x.getname());
System.out.println("Nazwisko trzeciego Studenta to: " + x.getpastName());
System.out.println("Numer indeksu trzeciego Studenta to: " + x.getindexNumber());
System.out.println("Imię czwartego Studenta to: " + x.getname());
System.out.println("Nazwisko czwartego Studenta to: " + x.getpastName());
System.out.println("Numer indeksu czwartego Studenta to: " + x.getindexNumber());
System.out.println("Imię piątego Studenta to: " + x.getname());
System.out.println("Nazwisko piątego Studenta to: " + x.getpastName());
System.out.println("Numer indeksu piątego Studenta to: " + x.getindexNumber());
}
}
}
Jednak program nie działa do końca dobrze.Podczas wyświetlania wyświetla mi na przykład imię pierwszego studenta to Michał pierwszego studenta Niedzielski numer indeksu pierwszego studenta to 96148 i wyświetla mi to samo 5 raz i dopiero wtedy wyświetla kolejnego studenta.Programowanie nie jest moją mocną stroną więc nie mogę znaleźć błędu.Czy ktoś może mi pomóc znaleźć błąd i go poprawić żeby program wyświetlał mi dane danego studenta tylko raz?