Java.. ArrayList안에 ArrayList만들기 : 네이버 블로그Back-end/Java, Kotlin2020. 10. 1. 18:09
Table of Contents
아래와 같은 구조를 활용하면
For문에 넣어서 활용할 수 있다.
내가 근무하는 곳의 경우 인터넷이 안 되므로 컬렉션프레임 라이브러리를 다운받을 수 없다.
때문에 ArrayList와 같은 효자 자료형을 사용할 수 없지만,
아래와 같이 동적할당 / 해제를 이용하면, array나 dictionary등의 자료형을 이용하여
동적할당 / 해제 할 수 있다.
//Queue<Integer> q= new LinkedList<Integer>();
//Vector<Integer>[] vct = new Vector<Integer>()[8];
ArrayList<Integer>[] al = new ArrayList[7];
int MaxNum = 7;
ArrayList<Integer> inner = new ArrayList<Integer>();
ArrayList<ArrayList> outer = new ArrayList<ArrayList>();
inner.add(1);
inner.add(2);
inner.add(3);
outer.add(inner);
System.out.println(outer);
inner = null;
System.out.println("다시 할당!");
inner = new ArrayList<Integer>(Arrays.asList(4,5,6));
outer.add(inner);
System.out.println(outer);
[[1, 2, 3]]
다시 할당!
[[1, 2, 3], [4, 5, 6]]
자바에서는 아래와 같은 경우도 가능한 것 같다..
ArrayList<Integer>[][] m = new ArrayList[10][10];
m[0][0] = new ArrayList();
m[0][0].add(101);
System.out.println(m[0][0]);
2차원으로 활용
ArrayList<Integer>[] m = new ArrayList[10];
for (int i = 0; i < 10; i++) {
m[i] = new ArrayList();
for (int j = 0; j < 3; j++) {
m[i].add((i + 1) + (j + 1) * 100);
}
}
for (int i = 0; i < 10; i++) {
System.out.print(" \n"+m[i]);
}
[101, 201, 301]
[102, 202, 302]
[103, 203, 303]
[104, 204, 304]
[105, 205, 305]
[106, 206, 306]
[107, 207, 307]
[108, 208, 308]
[109, 209, 309]
[110, 210, 310]
'Back-end > Java, Kotlin' 카테고리의 다른 글
디자인패턴 중.. State (2) | 2020.12.17 |
---|---|
enum 그것이 알구싶다 !! 이넘아 (0) | 2020.12.12 |
다형성과 형변환, instance : 네이버 블로그 (0) | 2020.10.01 |
작은 알아낸 것들 : 네이버 블로그 (0) | 2020.10.01 |
Stack, Heap, Class : 네이버 블로그 (0) | 2020.10.01 |
@philo0407 :: Philo의 다락방
hi hello... World >< 가장 아름다운 하나의 해답이 존재한다
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!