私はちょうどjavaを学び始めました。私は学生を登録するためのアプリケーションを作成しようとしています。クラスの特定のインスタンスを検索しますか?
この質問に基づいてhow-would-i-create-a-new-object...私はクラスのインスタンスを作成するためにwhileループを作成しました。
public class RegStudent {
ArrayList<Student> studentList = new ArrayList<>();
Scanner input = new Scanner(System.in);
public void reggaStudent(int start) {
while (start != 0) {
String programNamn, studNamn;
int totalPoint, antalKurser;
System.out.println("Vad heter programmet?");
programNamn = input.nextLine();
System.out.println("Vad heter studenten");
studNamn = input.nextLine();
System.out.println("Hur många poäng har studenten?");
totalPoint = input.nextInt();
System.out.println("Hur många kurser är studenten registrerad på?");
antalKurser = input.nextInt();
// Add student to list of students
studentList.add(new Student(totalPoint, antalKurser,
programNamn, studNamn));
System.out.println("Vill du registrera in en fler studenter? "
+ "Skriv 1 för ja och 0 för nej");
start = input.nextInt();
input.nextLine();
} // End of whileloop
}
}
クラスは次のとおりです。
public class Student {
private int totalPoint;
private int antalKurser;
private String programNamn;
private String studNamn;
private static int counter;
public Student(int totalPoint, int antalKurser, String program, String studNamn) {
this.totalPoint = totalPoint;
this.antalKurser = antalKurser;
this.programNamn = program;
this.studNamn = studNamn;
counter++;
}
public int getTotalPoint() {
return totalPoint;
}
public void setTotalPoint(int totalPoint) {
this.totalPoint = totalPoint;
}
public int getAntalKurser() {
return antalKurser;
}
public void setAntalKurser(int antalKurser) {
this.antalKurser = antalKurser;
}
public String getProgramNamn() {
return programNamn;
}
public void setProgramNamn(String programNamn) {
this.programNamn = programNamn;
}
public String getStudNamn() {
return studNamn;
}
public void setStudNamn(String studNamn) {
this.studNamn = studNamn;
}
public static int getCount(){
return counter;
}
@Override
public String toString() {
return String.format(" Namn: %s, Program: %s, Antal poäng: %d, "
+ "Antal kurser: %d\n ", studNamn, programNamn, totalPoint, antalKurser);
}
}
はどうやって取得し、特定のインスタンス内のインスタンス変数を設定しようとして行くのですか?私はインスタンスを見つける。
私はそれが悪いデザインかもしれないことを理解しますが、その場合、私は未知数の生徒をインスタンス化したい場合を解決する方法についていくつかの入力を感謝します。
私は実際にクラスのいくつかのインスタンスを作成したのを見るためにカウンタを追加しました。そして、あなたを...あなたには、いくつかのコレクション内のオブジェクトを持っているとき、あなたは、特定のプロパティを持つ1 /複数のオブジェクトを取得したい:つまり
for (Student student : studentList) {
if (student.getProgramName().equals("whatever")) {
some match, now you know that this is the student you are looking for
:
あなたが求めていることはまったくありません。特定の生徒をあなたのリストからどのように得ることができるかを知りたいですか?例えば名前(stugNamn)で? –
'studentList'とは何ですか?それはどのように宣言されていますか? –
はい、まさに!または、totalPointまたは他の変数を設定します。 – Garnbutik