LoginSignup
0
0

【Java】 配列を操作する | ArrayListの使い方ガイド

Last updated at Posted at 2023-06-03

はじめに

この記事では、JavaのArrayListについて初心者向けに解説します。
ArrayListは要素を動的に追加・削除できるデータ構造であり、配列と比較して柔軟な操作が可能です。以下では、ArrayListの基本的な使い方と代表的な使用例を紹介します。

ArrayListの基本的な使い方

まずはじめに、ArrayListを使用するためにはjava.utilパッケージをインポートする必要があります。以下に、ArrayListを使った基本的なコード例を示します。

import java.util.ArrayList;
import java.util.List;

public class ArrayListExample {
    public static void main(String[] args) {
        // ArrayListの作成
        //ArrayListを使う場合、Stringなどのデータ形式は
        //尖括弧(<>)で囲む必要があります
        //囲まないとコンパイルエラーが発生します
        //左辺で<String>を宣言することで、右辺の<>についてはStringが代入されます
        ArrayList<String> list = new ArrayList<String>();
       

        // 要素の追加
        list.add("りんご");
        list.add("ばなな");
        list.add("オレンジ");

        // 要素の取得
        String firstElement = list.get(0);
        System.out.println("最初の要素: " + firstElement);

        // 要素の削除
        list.remove(1);
        System.out.println("削除後の要素数: " + list.size());
    }
}

上記のコードでは、以下のような操作が行われています。

ArrayListの作成: ArrayList list = new ArrayList<>();として、ArrayListを作成しています。
要素の追加: list.add("りんご");のようにして、要素を追加しています。
要素の取得: list.get(0);として、指定したインデックスの要素を取得しています。
要素の削除: list.remove(1);として、指定したインデックスの要素を削除しています。
上記のコードを実行すると、以下のような結果が得られます。

最初の要素: りんご
削除後の要素数: 2

値を一つ取り出す

import java.util.ArrayList;

// 次のインポートが必要
import java.util.List;

public class Main {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("apple");
        list.add("banana");
        list.add("orange");

        // ArrayListで配列を作成した場合、
        // 中身を取得するにはgetメソッドを使用しなければならない
        // (もしくはforループで別の変数に入れ替える)
        String fruit = list.get(1);
        System.out.println(fruit); // 結果: banana
    }
}

ArrayListを使用せずに配列を作成した場合は
'list[1]'にて値を取得できますが

ArrayListで配列を作成した場合は
getメソッドを使用し引数に配列の番号を指定して値を取得します

get()メソッドを使用するためには、次のパッケージのインポートが必要です
java.util.List;

for文による値の操作

import java.util.ArrayList;
import java.util.List;

public class StringListExample {
    public static void main(String[] args) {
        ArrayList<String> stringList = new ArrayList<>();

        // 文字列の追加
        stringList.add("Java");
        stringList.add("Python");
        stringList.add("JavaScript");

        // 文字列の表示
        for (int i = 0; i < stringList.size(); i++) {
            System.out.println(stringList.get(i));
        }
    }
}

上記のコードでは、文字列のリストを作成し、要素を追加して表示しています。
for文により一度別の変数に値を代入する場合はgetメソッドは不要です。
実行結果は以下のようになります。

Java
Python
JavaScript

拡張forループによる操作

import java.util.ArrayList;
import java.util.List;


public class StringListExample {
    public static void main(String[] args) {
        ArrayList<String> stringList = new ArrayList<>();

        // 文字列の追加
        stringList.add("Java");
        stringList.add("Python");
        stringList.add("JavaScript");

        // 文字列の表示(拡張forループ)
        for (String list : stringList) {
            System.out.println(list);
        }

        // 拡張forループによる値の操作
        int index = 0;
        for (String list : stringList) {
            stringList.set(index, list + "言語");
            index++;
        }

        // forEachメソッドによる出力
            stringList.forEach(list -> {
                System.out.println(list);
            });
}

拡張forループで値を変数に代入する場合は
getメソッドは不要です

数値のリストの操作

import java.util.ArrayList;
import java.util.List;


public class NumberListExample {
    public static void main(String[] args) {
        ArrayList<Integer> numberList = new ArrayList<>();

        // 数値の追加
        numberList.add(10);
        numberList.add(20);
        numberList.add(30);

        // 合計値の計算
        int sum = 0;
        for (int num : numberList) {
            sum += num;
        }

        System.out.println("合計値: " + sum);
    }
}

上記のコードを実行すると、以下のような結果が得られます。

合計値: 60

このコードでは、ArrayListを使用して数値のリストを作成し、要素を追加しています。その後、拡張forループを使用してリストの要素を取り出し、合計値を計算して表示しています。

配列の要素数を取得し操作したい

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        // ArrayListを作成し、要素を追加する
        List<String> array = new ArrayList<>();
        array.add("Apple");
        array.add("Banana");
        array.add("Orange");

        // 最後の要素を削除する
        int lastIndex = array.size() - 1;
        if (lastIndex >= 0) {
            array.remove(lastIndex);
        }

        // 結果を出力する
        System.out.println(array);  // 出力: [Apple, Banana]
    }
}

まとめ

ArrayListは配列を操作するクラスであり、柔軟な要素の追加や削除が可能なため、データの動的な管理や操作に便利です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0