Javaを学ぶなら、インスタンスを配列に格納する方法を知りたいという方は多いです。
しかしプログラミングを学び始めた初心者の方にはこの方法が意外と難しかったり、うまくいかないこともあります。
そこでこの記事ではJavaの初心者でも理解しやすい解説で、インスタンスを配列に格納する方法を徹底的に解説します。
本記事を読むことで、Javaのプログラミングスキルが向上するだけでなく、さまざまな開発に役立つ知識を身につけることができます。
これまでうまくいかなかった人も、この記事を読んで解決策を見つけましょう!
挫折せずにプログラミングを学ぶために必要なこと
僕はプログラミングで挫折した経験があります。
それは周りに聞ける人がいなく、一人でエラーと戦っていたからです。
Freeksは月額10,780円という破格の値段で、現役エンジニアに質問する環境を手に入れることができるプログラミングスクールです。
次のような悩みを少しでも抱えていたら、まずは無料カウンセリングを受けてみてください。
申込みは1分でできます。学習する環境にお金を使うというのは良い自己投資になります。
>>Freeksの無料カウンセリングはこちら
サンプルコード
今回の記事ではBedクラスとBedクラスのテストを行うBedTestクラスを用意しました。
Bedクラス
まずはBedクラスです。
ベッドの縦の長さと横幅、ベッドのサイズを保持するフィールドを持ちます。
またベッドの情報を出力するprintDataメソッドがあります。
/**
* Bedクラス
* 今回はこのクラスのインスタンスを配列に格納していく
*/
public class Bed {
// ベッドの縦の長さを保持する
private int tateNagasa;
// ベッドの横幅を保持する
private int yokoHaba;
// ベッドのサイズを保持する
private String bedSize;
// コンストラクタ
Bed (int tate, int yoko, String bedSize) {
this.tateNagasa = tate;
this.yokoHaba = yoko;
this.bedSize = bedSize;
}
// ベッドの情報を出力するメソッド
public void printData() {
System.out.println(bedSize + "ベッドのサイズは縦の長さが" + tateNagasa + "cm 横幅は" + yokoHaba + "cmです。");
}
}
インスタンスを生成して、配列に格納する
先ほど作ったBedクラスをテストするTestクラスです。
こちらのクラスで実際にインスタンスを配列に格納していきます。
public class BedTest {
// Bedクラスのインスタンスを生成して配列に格納する
public static void main(String[] args) {
// シングルサイズのベッドのインスタンスを生成
Bed singleBed= new Bed(190, 100, "Single");
// ダブルサイズのベッドのインスタンスを生成
Bed doubleBed= new Bed(210, 140, "Double");
// 赤ちゃんサイズのベッドのインスタンスを生成
Bed babyBed= new Bed(93, 55, "baby");
// セミダブルのベッドのインスタンスを生成
Bed semiDoubleBed= new Bed(210, 120, "semiDouble");
// Bedクラスの配列の宣言
Bed[] bedList = new Bed[4];
// 配列にインスタンスを格納していく
bedList[0] = babyBed;
bedList[1] = singleBed;
bedList[2] = semiDoubleBed;
bedList[3] = doubleBed;
// ループで回してBedクラスのprintDataメソッドを実行していく
for(Bed bed: bedList) {
bed.printData();
}
}
}
複数インスタンスを作成
配列に格納していくことになるインスタンスを作成します。
今回はsingleBed, doubleBed, babyBed, semiDoubleBedの四つのBedインスタンスを準備しました。
Bed singleBed= new Bed(190, 100, "Single");
Bed doubleBed= new Bed(210, 140, "Double");
Bed babyBed= new Bed(93, 55, "baby");
Bed semiDoubleBed= new Bed(210, 120, "semiDouble");
Bedインスタンスを配列に格納していく
ここから実際に配列に格納していきます。
今回配列に格納するインスタンスは全てBedクラスをインスタンス化したものなのでBed型の配列であるbedListを宣言・初期化します。
その後bedListに順番にインスタンスを代入していきます。
これを今回の場合では四回繰り返します。
Bed[] bedList = new Bed[4];
bedList[0] = babyBed;
bedList[1] = singleBed;
bedList[2] = semiDoubleBed;
bedList[3] = doubleBed;
配列に格納したインスタンスのメソッドを実行していく
最後に配列に格納したbedを拡張forによって順番に取り出しBedクラスが持つメソッドであるprintData()メソッドを呼び出します。
for(Bed bed: bedList) {
bed.printData();
}
動作確認
以上のコードを実際に実行して動きを確認してみます。実行結果は以下の通りになります。
babyベッドのサイズは縦の長さが93cm 横幅は55cmです。
Singleベッドのサイズは縦の長さが190cm 横幅は100cmです。
semiDoubleベッドのサイズは縦の長さが210cm 横幅は120cmです。
Doubleベッドのサイズは縦の長さが210cm 横幅は140cmです。
以上、インスタンスを配列に格納する方法でした。
挫折せずにプログラミングを学ぶためには?
僕はプログラミングで挫折した経験があります。
エラーの連続やエラーが解消しても思った通りに動かないといったことが原因で、プログラミングが嫌いでした。
「プログラミングって全然意味わからないし、全然楽しくない」そう思っていました。
原因は当時周りに聞ける人が誰もいなかったからです。
プログラミング学習をしていく上で周りに聞ける環境というのはとても大切です。
周りに聞ける人なんていない
そんな人におすすめなのが月額10,780円で現役エンジニアに質問できる、プログラミングスクールのFreeksです。
多くのプログラミングスクールが数十万円払って通うところを月額10,780円から通うことができるのはコスパが良いです。
しかもサブスク制で、自分のペースで学ぶことができ嫌になったらすぐにやめることができます。
「周りに誰も聞ける人がいなくて、エラーが解決できない」「プログラミング全然楽しくない」という方は、無料カウンセリングを受けてみて下さい。
【関連記事】Freeks評判、口コミ