예제
import java.util.ArrayList;
public class Collection_FrameworkArrayList03 {
public static void main(String[] args) {
//[1] : 객체생성
ArrayList<Integer[]> arr = new ArrayList<Integer[]>();
//[2] : 요소 추가 -> add()
arr.add(new Integer[] {11, 12, 13, 14});
arr.add(new Integer[] {21, 22, 23, 24});
arr.add(new Integer[] {31, 32, 33, 34});
//[3] : 요소 출력
System.out.println("인덱스 출력");
for(int i = 0; i < arr.size(); i++) {
System.out.println(arr.get(i)[0]); // 각 n번째 배열 첫 번째 값)
}
//[4] : 전체 요소 출력 -> 이중 반복문 -> 그런데, 그전에 안쪽 배열의 사이즈를 미리체크 -> 여기서 주의!
System.out.println(arr.get(0).length); //배열(int[], Integer[], String[])의 길이를 알고 싶을때 사용.
//[5] : 전체 요소 출력
System.out.println("--- [전체 요소 출력] ---");
for(int i = 0; i < arr.size(); i++) {
for(int j = 0; j < arr.get(i).length; j++) {
System.out.print(arr.get(i)[j] + " ");
}
}
}
}
1. ArrayList 배열 객체 생성과 추가
이 예제에서는 Integer 배열을 요소로 가지는 ArrayList를 생성했다. 이렇게 하면 ArrayList의 각 요소가 배열로 되어 있기 때문에, 이중 배열과 비슷한 구조를 가지게 된다.
ArrayList<Integer[]> arr = new ArrayList<Integer[]>();
그 후, "add()" 메서드를 사용하여 Integer 배열을 추가했다.
arr.add(new Integer[] {11, 12, 13, 14});
arr.add(new Integer[] {21, 22, 23, 24});
arr.add(new Integer[] {31, 32, 33, 34});
2. ArrayList의 배열 요소 접근
ArrayList에 저장된 배열의 요소를 접근하는 방법은 먼저 "get()" 메서드를 사용하여 원하는 배열을 가져온 다음, 배열 인덱싱을 통해 해당 요소를 가져온다. 이때 "get()" 메서드의 인자는 ArrayList의 인덱스이며, 배열 인덱싱의 인자는 배열의 인덱스이다.
System.out.println(arr.get(i)[0]);
3. ArrayList의 모든 배열 요소 접근
ArrayList에 저장된 모든 배열의 요소를 접근하려면, 이중 반복문을 사용하면 된다. 첫 번째 반복문은 ArrayList의 인덱스를 순회하고, 두번째 반복문은 배열의 인덱스를 순회한다.
for(int i = 0; i < arr.size(); i++) {
for(int j = 0; j < arr.get(i).length; j++) {
System.out.print(arr.get(i)[j] + " ");
}
}
ArrayList 2차원 배열 String
public class Collection_FrameworkArrayList03 {
public static void main(String[] args) {
ArrayList<String[]> str = new ArrayList<String[]>();
str.add(new String[] {"홍길동", "이순신", "육룡이"});
str.add(new String[] {"나르샤", "임꺽정", "광개토"});
str.add(new String[] {"김두한", "시라소니", "이정재"});
for(int i = 0; i < str.size(); i++) {
for(int j = 0; j < str.get(i).length; j++) {
System.out.print(str.get(i)[j] + " ");
}System.out.println();
}
}
}
'Java > JAVA 100 문제 풀이' 카테고리의 다른 글
자바 part.5 문제풀이 - Iterator 활용한 ArrayList 요소 접근과 삭제 (0) | 2023.08.01 |
---|---|
자바 part.5 문제풀이 - Iterator 이해와 활용 방법 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList를 활용한 데이터 처리 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList : 동적 데이터 구조의 이해와 활용 (0) | 2023.08.01 |
자바 part.5 문제풀이 - 컬렉션 프레임워크란 무엇인가? (0) | 2023.08.01 |