HOWTO · Java

Java로 2D ArrayList 생성

Java에서 2 차원 ArrayList를 생성하는 방법을 설명합니다.

이 페이지의 내용

ArrayList는 크기가 고정 된 배열과 달리 크기를 수정할 수있는 동적 배열입니다. 유연성은 가장 높이 평가되지만 2 차원 배열처럼 2 차원 ArrayList를 생성 할 수있을만큼 유연합니까? 알아 봅시다.

이 튜토리얼에서는 2D ArrayList Java를 만드는 방법에 대한 두 가지 방법을 소개합니다.

고정 크기 배열을 사용하여 Java에서 2D ArrayList 생성

이 첫 번째 메서드는 3 개의 행과 3 개의 열 크기의arraylist1이라는 ArrayList를 만듭니다. arraylist1에 문자열의 ArrayList를 삽입하려고합니다. 이를 위해 각 행과 열에 ArrayList 객체를 만들고 여기에 데이터를 추가합니다.

아래의 예는arraylist[0][0]이 첫 번째 행인 첫 번째 행과arraylist1의 첫 번째 열이 채워지는 것을 보여줍니다. 이것은 ArrayList가 완전히 채워질 때까지 계속됩니다. 여기서는 첫 번째 행에만 데이터를 추가하고 다음 두 행은 null이므로 출력이 null로 표시됩니다.

import java.util.ArrayList;
import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    ArrayList<String>[][] arraylist1 = new ArrayList[3][3];
    arraylist1[0][0] = new ArrayList<String>();

    arraylist1[0][0].add("String One");
    arraylist1[0][0].add("String Two");
    arraylist1[0][0].add("String Three");

    arraylist1[0][1] = new ArrayList<String>();
    arraylist1[0][1].add("String One");
    arraylist1[0][1].add("String Two");
    arraylist1[0][1].add("String Three");

    arraylist1[0][2] = new ArrayList<String>();
    arraylist1[0][2].add("String One");
    arraylist1[0][2].add("String Two");
    arraylist1[0][2].add("String Three");

    System.out.println(Arrays.deepToString(arraylist1));
  }
}

출력:

[[[String One, String Two, String Three], [String One, String Two, String Three], [String One, String Two, String Three]], 
 [null, null, null], 
 [null, null, null]]

ArrayList의 ArrayList를 생성하여 Java에서 2D ArrayList 생성

Java에서 2D 목록을 생성하는 다음 방법은 ArrayLists의 ArrayList를 만드는 것입니다. 그것은 2 차원 적이기 때문에 우리의 목적에 부합 할 것입니다. outerArrayList1 안에innerArraylist 함수를 삽입하기 위해 2D ArrayList Java 객체를outerArrayList1로 초기화 할 수 있습니다.

다음과 마지막 단계는 데이터를innerArraylist 함수에 추가 한 다음outerArrayList 명령에 추가하는 것입니다. outerArrayList 명령에 하나 이상의 ArrayList를 추가 할 수 있습니다.

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

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

    innerArraylist = new ArrayList<String>();

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

    innerArraylist.add("String One");
    innerArraylist.add("String Two");
    innerArraylist.add("String Three");

    outerArrayList.add(innerArraylist);

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

출력:

[[String One, String Two, String Three]]