はじめに
Java では、メソッドから配列を返すことができます。これは、データのグループを返したい場合に便利です。この実験では、Java で配列を返す方法を学びます。
配列を返すメソッドを宣言する
配列を返すには、メソッドの戻り値の型は配列型でなければなりません。次の例では、整数型の配列を返す getArray() という名前のメソッドを宣言しています。
public static int[] getArray() {
int[] arr = {1, 2, 3, 4, 5};
return arr;
}
メソッドを呼び出す
配列を返すメソッドを呼び出すには、返された配列を同じ型の変数に代入します。以下に例を示します。
int[] myArray = getArray();
返された配列を出力する
メソッドから返された配列を出力するには、for ループを使用して配列の要素を繰り返し処理し、要素を 1 つずつ出力することができます。
for (int i = 0; i < myArray.length; i++) {
System.out.print(myArray[i] + " ");
}
配列をメソッドに渡し、変更された配列を返す
配列をメソッドに渡し、メソッド内で配列に対して操作を行い、変更された配列を返すこともできます。次の例では、整数型の配列を reverseArray() という名前のメソッドに渡しています。このメソッドは配列内の要素の順序を逆にし、逆順になった配列を返します。
public static int[] reverseArray(int[] arr) {
int left = 0;
int right = arr.length - 1;
while (left < right) {
int temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left++;
right--;
}
return arr;
}
メソッドを呼び出し、変更された配列を出力する
配列の要素の順序を逆にし、変更された配列を返すメソッドを呼び出すには、まず配列を作成し、次に reverseArray() メソッドを呼び出して、作成した配列をパラメータとして渡します。最後に、変更された配列を出力するには、for ループを使用して配列の要素を繰り返し処理し、要素を 1 つずつ出力します。
int[] myArray = {1, 2, 3, 4, 5};
myArray = reverseArray(myArray);
for (int i = 0; i < myArray.length; i++) {
System.out.print(myArray[i] + " ");
}
メソッドからオブジェクトの配列を返す
メソッドからオブジェクトの配列を返すこともできます。次の例では、stud_name と roll_no のデータメンバを持つ Student クラスを作成します。そして、Student オブジェクトの配列を返す getStudents() という名前のメソッドを宣言します。
class Student
{
String stud_name;
int roll_no;
Student(String stud_name, int roll_no) {
this.stud_name = stud_name;
this.roll_no = roll_no;
}
}
public static Student[] getStudents() {
Student[] arr = new Student[2];
arr[0] = new Student("Alice", 101);
arr[1] = new Student("Bob", 102);
return arr;
}
メソッドを呼び出し、オブジェクトを出力する
オブジェクトの配列を返すメソッドを呼び出すには、返された配列を同じ型の変数に代入し、次に for ループを使用して配列の要素を繰り返し処理し、各オブジェクトの内容を出力します。
Student[] myArray = getStudents();
for (int i = 0; i < myArray.length; i++) {
System.out.println("Name: " + myArray[i].stud_name + " Roll No: " + myArray[i].roll_no);
}
まとめ
この実験では、Java で配列を返す方法を学びました。また、配列をメソッドに渡し、その配列に対して操作を行い、変更された配列を返す方法も学びました。さらに、メソッドからオブジェクトの配列を返す方法も学びました。



