- 締切済み
ArrayListについて教えてください
ArrayListについて教えてください Java初心者です。 現在あるJavaの問題を解いていて、つまづいてしまいました。 わかる方、ご教示お願いします。 以下問題 ****************************************************************** 以下2メソッドを持つShikenKekkaクラスを作成せよ ・学籍No,科目,点数を登録する void Toroku(String 学籍No , Kamoku 科目 , int 点数); ・引数で指定した学籍No,科目の点数を返す int getTensu(String 学籍No,Kamoku 科目); 科目は以下の定義 enum Kamoku{KOKUGO,SANSU,RIKA} 使用例として、 ShikenKekka sk = new ShikenKekka(); sk.Toroku("0A01",Kamoku.KOKUGO,70); sk.Toroku("0A01",Kamoku.SANSU ,60); sk.Toroku("0A01",Kamoku.RIKA ,50); sk.Toroku("0B02",Kamoku.KOKUGO,75); sk.Toroku("0B02",Kamoku.SANSU ,65); sk.Toroku("0B02",Kamoku.RIKA ,55); int point = sk.getTensu("0B02",Kamoku.RIKA); ****************************************************************** ArrayListを使って値を格納しようとしているのですが、 ArrayListの使い方がうまくできません。 学籍No,科目,点数の3つの値をどうすれば格納して保持できるのか、 教えていただけると助かります わかりずらい説明で申し訳ありません。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- sacra04
- ベストアンサー率33% (1/3)
以下ShikenKekkaClass ****************************************************************** import java.util.ArrayList; import java.util.List; public class ShikenKekka { // 科目は以下の定義 public enum Kamoku{KOKUGO,SANSU,RIKA}; // 成績格納リスト List<MySeiseki> seisekiList; /** * コンストラクタ */ public ShikenKekka(){ this.seisekiList = new ArrayList<MySeiseki>(); } /** * 学籍No,科目,点数を登録する * @param no 学籍No * @param kamoku 科目 * @param tensu 点数 */ public void Toroku(String no , Kamoku kamoku , int tensu){ MySeiseki myseiseki = new MySeiseki(no, kamoku, tensu); this.seisekiList.add(myseiseki); } /** * 引数で指定した学籍No,科目の点数を返す * 該当なしの場合は0を返す * @param no 学籍No * @param kamoku 科目 * @return tensu 点数 */ public int getTensu(String no, Kamoku kamoku){ // 点数格納変数の初期化 int ten = 0; for(MySeiseki work: this.seisekiList){ // 学歴NOと科目が一致すれば点数を取得 if(work.getGakurekiNo().equals(no) && work.getKamoku().equals(kamoku)){ ten = work.getTensu(); break; } } return ten; } // MY成績クラス public class MySeiseki{ String gakurekiNo; // 学歴No Kamoku kamoku; // 科目 int tensu; // 点数 // コンストラクタ public MySeiseki(String no, Kamoku k, int ten){ this.gakurekiNo = no; this.kamoku = k; this.tensu = ten; } // 学歴NOを取得する public String getGakurekiNo(){ return this.gakurekiNo; } // 科目を取得する public kamoku getKamoku(){ return this.kamoku; } // 点数を取得する public int getTensu(){ return this.tensu; } } } ****************************************************************** 自分が作成するとしたら、こんな感じです。 見にくくてすみません…