【Java】List(リスト)の使い方【配列との違いも解説】

リストの使い方_アイキャッチ画像 Java

「Listと配列の違いが分からない!」

「Listってどうやって使うの?」

という方のために、Listについて解説します。

今回は特によく使われるArrayListについて解説します。

Listは、配列に似ていますが、配列よりも汎用性が高く、使いやすいです。

配列がよく分からない方はこちらの記事を参考にしてください。

【Java】配列の使い方【初心者向け】
配列とはどのようなものなのか?また、Javaでの配列の使い方も解説します。 配列とは? 配列とはデータをまとめて管理するものです 変数をいくつもまとめて管理しているといったイメージですね。 配列に格納されたデータのことを要素といい、要素の数...

開発においても、Listはよく使うので、ぜひ覚えておきましょう。

配列との違い

Listは配列とよく似ていますが、大きな違いは、要素数を自由に増減できる点です。

配列では、宣言時に要素数を指定し、それ以降は要素数を増やすことも減らすこともできません。

しかし、Listでは宣言後も自由に要素数を増やしたり、減らしたりすることができます。

java.utilのインポート

ListはJavaが用意してくれているインタフェースです。

よく分からないと思いますが、要はJavaで元々用意された便利ツールです。

その便利ツールListはインポートすることで使用できるようになります。

Listのインポートの方法は以下の通りです。

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

今回は、特にArrayListについて解説していくので、ArrayListもインポートしておきます。

インポート文はmain文や、クラスの外に記述してください。

/*

ここに記述する
import java.util.List;
import java.util.ArrayList;

*/

public class Sample{
 public static void main(String  args[]){

 }
}

ArrayListの宣言方法

ArrayListの宣言方法は主に以下の3つです。

①List<データ型> リスト名 = new ArrayList<データ型>();

②List<データ型> リスト名 = new ArrayList<データ型>( 要素数 );

③List<データ型> リスト名 = new ArrayList<データ型>( Arrays.asList(要素) );

List<データ型> リスト名 = new ArrayList<データ型>();

最も基本的なArrayListの宣言方法です。

データ型は、リストに格納したいデータの型を指定し、リスト名は自分の好きな名前でOKです。

以下、実例です。

List<String> name = new ArrayList<String>();

これで、何もデータが格納されていない ArrayList「name」が作成されました。

List<データ型> リスト名 = new ArrayList<データ型>( 要素数 );

この宣言方法では、あらかじめArrayListの要素数を指定しておくことができます。

初めからたくさんのデータを格納することが分かっている場合に使用すると良いです。

以下、実例です

List<String> name = new ArrayList<String>(1000);

これで、要素数1000のArrayList「name」が作成されました。

List<データ型> リスト名 = new ArrayList<データ型>( Arrays.asList(要素) );

この宣言方法では、宣言時に初期値を設定することができます。

初めから格納するデータが決まっている場合に使用すると良いです。

以下、実例です。

List<String> name = new ArrayList<String>(Arrays.asList("太郎", "次郎", "三郎"));  

これで、「太郎」、「次郎」、「三郎」が格納されたArrayList「name」が作成されました。

ArrayListにデータを格納

初めから格納するデータが決まっている場合には、上で説明した宣言方法③(asListを使った方法)であらかじめデータを格納することができます。

宣言後にデータを格納するにはadd( )メソッドを使用します。

add( )の書き方は以下の通りです。

リスト名.add( データ );

add( )メソッドを使用すると、ArrayListの末尾にデータを追加します。

以下、実例です。

//空のArrayListを作成
List<String> name = new ArrayList<String>();

//末尾にデータを追加
name.add("太郎");
name.add("次郎");
name.add("三郎");

これで、ArrayList「name」には「太郎」、「次郎」、「三郎」が格納されました。

ちなみに、remove( )メソッドを使うことで、要素を削除することができます。

remove( )メソッドの書き方は以下の通りです。

リスト名.remove( 要素番号 );

以下が実例です。

name.remove(1); //要素「次郎」が削除される

先ほどのArrayList「name」の要素「次郎」を削除しています。

ArrayListからデータを取り出す

ArrayListからデータを取り出すにはget( )メソッドを使います。

get( )メソッドの書き方は以下の通りです。

リスト名.get( 要素番号 );

以下、実例です。

//空のリスト作成
List<String> name = new ArrayList<String>();

//データの格納
name.add("太郎");
name.add("次郎");
name.add("三郎");

//データの取り出し
System.out.println(name.get(1)); //「次郎」が出力される

まとめ

Listと配列の違い
 ・Listは宣言後に要素数を増減できるが、配列はできない

List、ArrayListのインポート方法
 ・import java.util.List;
 ・import java.util.ArrayList;

ArrayListの宣言方法
 ・List<データ型> リスト名 = new ArrayList<データ型>();
 ・List<データ型> リスト名 = new ArrayList<データ型>( 要素数 );
 ・List<データ型> リスト名 = new ArrayList<データ型>( Arrays.asList(要素) );

ArrayListへのデータの格納方法
 リスト名.add( データ );

ArrayListからデータを取り出す方法
 リスト名.get( 要素番号 );

コメント

タイトルとURLをコピーしました