私は、ゲーム情報と呼ばれる別のクラスの配列を作成するために使用したレビュークラスを持っています。配列のセッターメソッド
私は、レビューをgameInfoの配列に追加するためのセッターメソッドを作成しました。私はaddReview
このゲームレビューを検索し、空のレビュースロットがある場合は、レビュー入力をレビューアレイに追加します。私はちょうど私がaddReview
方法のための正しい論理を持っていることを確かめたいと思う。
class Review {
//review class variables
public String reviewText;
public int numberOfStars;
//review class constructor
public Review(String reviewText, int numberOfStars) {
this.reviewText=reviewText;
this.numberOfStars=numberOfStars;
}
}
class GameInfo {
//game info class variables
private String title;
private Review[] reviews = new Review[10];
//game info class constructor
public GameInfo(String title, Review[] reviews) {
this.title=title;
this.reviews = reviews;
}
//setter to add single review to reviews[]
public void addReview(Review r) {
int i;
for(i = 0; i < this.reviews.length; i++) {
if(this.reviews[i] == null) {
this.reviews[i].reviewText = r.reviewText;
this.reviews[i].numberOfStars = r.numberOfStars;
break;
}
}
}
}
T.J.の答えは、このコードが例外をもたらす理由を示しています。しかし、私はまた、これが実際にあなたが物事をどのようにしたいかどうかについても疑問を呈しますあなたのソリューションを動作させるために、 'GameInfo'を構成するコードは、' null'スロットの配列を構築しなければなりません。後で追加されます。あるいは、いくつかのレビューと他の 'ヌル'スロットを持つ配列です。これはCのやり方のようです。 'ArrayList'を見てください。これは配列に要素を動的に追加することを可能にするもっと良い方法です。 – ajb