Java で ArrayList を出力する

Rupam Yadav 2023年10月12日
  1. for ループを使って Java で ArrayList を出力する
  2. forEach を用いた Java での ArrayList の出力
  3. ID を使って Java で ArrayList を出力する
  4. Java で toString() コマンドを使用したの ArrayList の出力
Java で ArrayList を出力する

この記事では、Java で ArrayList を出力する複数の方法について説明します。ArrayList には ModelClass というクラスオブジェクトが含まれており、変数 name と関数 getter/setter を持っています。

for ループを使って Java で ArrayList を出力する

ループを使って Java ArrayList オブジェクトの項目を表示することができます。ここでは、for ループを使って modeList 内の ModelClass オブジェクトをすべて調べて getName() 関数を呼び出し、名前を返します。

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<ModelClass> modelList;

    ModelClass m1 = new ModelClass();
    ModelClass m2 = new ModelClass();
    ModelClass m3 = new ModelClass();

    m1.setName("Sam");
    m2.setName("Kevin");
    m3.setName("Gwen");

    modelList = new ArrayList<ModelClass>();
    modelList.add(m1);
    modelList.add(m2);
    modelList.add(m3);

    for (int i = 0; i < modelList.size(); i++) {
      System.out.println(modelList.get(i).getName());
    }
  }
}

class ModelClass {
  private String name;
  void setName(String name) {
    this.name = name;
  }

  String getName() {
    return name;
  }
}

出力:

Sam
Kevin
Gwen

forEach を用いた Java での ArrayList の出力

Java では、すべての ArrayList には forEach メソッドがあり、これは for ループと同様にすべての項目をループさせる最も簡単な方法の一つです。先ほどの例と同様に、ModelClass から getName() メソッドを使って名前を取得することができます。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.function.Consumer;

public class Main {
  public static void main(String[] args) {
    ArrayList<ModelClass> modelList;

    ModelClass m1 = new ModelClass();
    ModelClass m2 = new ModelClass();
    ModelClass m3 = new ModelClass();

    m1.setName("Sam");
    m2.setName("Kevin");
    m3.setName("Gwen");

    modelList = new ArrayList<ModelClass>();
    modelList.add(m1);
    modelList.add(m2);
    modelList.add(m3);

    modelList.forEach(new Consumer<ModelClass>() {
      @Override
      public void accept(ModelClass modelClass) {
        System.out.println(modelClass.getName());
      }
    });
  }
}

class ModelClass {
  private String name;
  void setName(String name) {
    this.name = name;
  }

  String getName() {
    return name;
  }
}

出力:

Sam
Kevin
Gwen

ID を使って Java で ArrayList を出力する

これは、toString() のようなメソッドを使用せずに ArrayList を出力すれば取得できます。これは、例の出力にあるように、項目の ID を持つ生の ArrayList を出力します。

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<ModelClass> modelList;

    ModelClass m1 = new ModelClass();
    ModelClass m2 = new ModelClass();
    ModelClass m3 = new ModelClass();

    m1.setName("Sam");
    m2.setName("Kevin");
    m3.setName("Gwen");

    modelList = new ArrayList<ModelClass>();
    modelList.add(m1);
    modelList.add(m2);
    modelList.add(m3);

    System.out.println(modelList);
  }
}

class ModelClass {
  String name;
  void setName(String name) {
    this.name = name;
  }
}

出力:

[ModelClass@682a0b20, ModelClass@3d075dc0, ModelClass@214c265e]

Java で toString() コマンドを使用したの ArrayList の出力

このリストの最後のメソッドは ModelClass 内の toString() メソッドをオーバーライドしています。この関数は modeList を使って呼び出すと name を返します。この処理は名前にあるように文字列の値しか返せないことに注意してください。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.function.Consumer;

public class Main {
  public static void main(String[] args) {
    ArrayList<ModelClass> modelList;

    ModelClass m1 = new ModelClass();
    ModelClass m2 = new ModelClass();
    ModelClass m3 = new ModelClass();

    m1.setName("Sam");
    m2.setName("Kevin");
    m3.setName("Gwen");

    modelList = new ArrayList<ModelClass>();
    modelList.add(m1);
    modelList.add(m2);
    modelList.add(m3);

    System.out.println(modelList.toString());
  }
}

class ModelClass {
  private String name;
  void setName(String name) {
    this.name = name;
  }

  @Override
  public String toString() {
    return "ModelClass{"
        + "name='" + name + '\'' + '}';
  }
}

出力:

[ModelClass{name='Sam'}, ModelClass{name='Kevin'}, ModelClass{name='Gwen'}]
著者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

関連記事 - Java ArrayList