Java でオブジェクトの配列を作成する
- オブジェクトの配列を作成し、Java のコンストラクターを使用してオブジェクトを初期化する
-
オブジェクトの配列を作成し、Java で
{}
配列表記を使用してコンストラクターを呼び出してオブジェクトを初期化する - Java で初期値を持つオブジェクトの配列を宣言する
この記事では、Java でオブジェクトの配列を作成するメソッドを紹介します。この記事では、オブジェクトのインスタンス化とその実装についても説明します。
オブジェクトの配列を作成し、Java のコンストラクターを使用してオブジェクトを初期化する
Java はオブジェクト指向プログラミング言語であり、クラスとオブジェクトで構成されています。Java の []
配列表記を使用して、オブジェクトの配列を作成できます。コンストラクターを使用して、値を渡すことでオブジェクトを初期化できます。式の構文を以下に示します。
Type[] objectName = new ClassName[];
Type
は、オブジェクトのタイプを示します。特定のデータ型またはクラス型の場合があります。タイプの後の []
記号は、配列を作成しているのと似ています。オプション objectName
は、オブジェクトの名前を参照します。new
演算子はインスタンスを作成します。ClassName
は、オブジェクトが作成されたクラスの名前を指します。配列のサイズは、クラスの後の []
で指定できます。配列内のインデックスを使用して、各オブジェクトをインスタンス化できます。
たとえば、Customer
という名前のクラスがあります。
- クラス
Store
を作成して、main メソッドを書き込みます。main メソッド内で、Customer
タイプの配列arr
を作成し、2つのCustomer
クラスのオブジェクトにメモリを割り当てます。 - インデックス付き配列
arr
からCustomer
クラスの 2つのオブジェクトを作成します。 - オブジェクトの作成中に、最初のオブジェクトに値
709270
とRobert
を指定し、2 番目のオブジェクトに709219
とNeal
を指定します。
これらの値は、Customer
クラスのコンストラクターのパラメーターです。次に、作成したオブジェクトを使用して display()
関数を呼び出します。
Customer
クラスには、パブリックプロパティ id
と name
が含まれています。クラスのコンストラクターは、これらのプロパティの値を設定します。パブリック関数 display()
は、クラスのプロパティを表示します。以下の例では、オブジェクトは配列から作成され、コンストラクターはオブジェクトの作成中に呼び出されます。次に、オブジェクトが display()
関数を呼び出し、出力が表示されます。これまで、オブジェクトの配列を作成し、それをメソッドで使用する方法を学びました。
サンプルコード:
public class Store {
public static void main(String args[]) {
Customer[] arr = new Customer[2];
arr[0] = new Customer(709270, "Robert");
arr[1] = new Customer(709219, "Neal");
arr[0].display();
arr[1].display();
}
}
class Customer {
public int id;
public String name;
Customer(int id, String name) {
this.id = id;
this.name = name;
}
public void display() {
System.out.println("Customer id is: " + id + " "
+ "and Customer name is: " + name);
}
}
出力:
Customer id is: 709270 and Customer name is: Robert
Customer id is: 709219 and Customer name is: Neal
オブジェクトの配列を作成し、Java で {}
配列表記を使用してコンストラクターを呼び出してオブジェクトを初期化する
2 番目のメソッドでは、最初のメソッドで行ったようにオブジェクトの配列を作成します。つまり、コンストラクターを使用してオブジェクトをインスタンス化します。ただし、オブジェクトをインスタンス化するために単一行のアプローチを使用します。オブジェクトを保持する配列を作成するときに、コンストラクターを呼び出します。コンストラクター呼び出しは、{}
配列表記内の 1 行で記述できます。Store
クラスに Customer
クラスのオブジェクトを作成します。
たとえば、最初の方法のように配列 arr
を作成します。ただし、オブジェクトにメモリを割り当てる代わりに、同じ行にオブジェクトを作成します。new Customer[]
の後に配列 {}
表記を記述します。次に、new
キーワードを使用して Customer
クラスの 2つのオブジェクトを作成します。コンストラクターへのパラメーターとして、それぞれの id
と name
を指定します。各コンストラクター呼び出しを区切るには、コンマを使用します。
コード例:
public class Store {
public static void main(String args[]) {
Customer[] arr = new Customer[] {new Customer(709270, "Robert"), new Customer(709219, "Neal")};
arr[0].display();
arr[1].display();
}
}
class Customer {
public int id;
public String name;
Customer(int id, String name) {
this.id = id;
this.name = name;
}
public void display() {
System.out.println("Customer id is: " + id + " "
+ "and Customer name is: " + name);
}
}
出力:
Customer id is: 703270 and Customer name is: Sushant
Customer id is: 703219 and Customer name is: Simanta
Java で初期値を持つオブジェクトの配列を宣言する
Java でオブジェクトの配列を作成する 3 番目のメソッドでは、初期値を提供するオブジェクトの配列を宣言します。このアプローチでは、別のクラスオブジェクトを作成しません。したがって、このメソッドではコンストラクターは使用されません。配列 {}
表記を使用して、オブジェクトの配列を記述します。Object
タイプを使用して、オブジェクトの配列を作成します。
たとえば、クラスを作成し、main メソッドを記述します。次に、Object
タイプの配列 arr
を作成します。{}
表記内にオブジェクトを記述します。オブジェクトは、CRF
、文字列値、2020
の値を持つ Integer
クラスのインスタンス、Husky
別の文字列、および値 2017
の Integer
クラスの別のインスタンスです。最後に、配列インデックスメソッドを使用して各オブジェクトを出力します。
サンプルコード:
class Motorcycle {
public static void main(String args[]) {
Object[] arr = {"CRF", new Integer(2020), "Husky", new Integer(2017)};
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);
}
}
出力:
CRF
2020
Husky
2017
関連記事 - Java Object
- Java でオブジェクトを JSON にシリアライズする
- XML を Java オブジェクトに解析
- Java でのデータアクセスオブジェクトの実装
- Java でオブジェクトを文字列にシリアル化
- Java でオブジェクトを Int に変換する
- Java でオブジェクトの配列を並べ替える