여러 리스트를 하나의 리스트로 합치는 방법을 소개합니다.
1. addAll()을 이용한 방법
list1.addAll(list2)
는 list1에 list2의 모든 요소를 추가합니다.
void main() {
List list1 = [1, 2, 3];
List list2 = [4, 5, 6];
list1.addAll(list2);
print(list1);
print(list2);
}
Output:
[1, 2, 3, 4, 5, 6]
[4, 5, 6]
1.1 원본 리스트 변경 없이 합치기
위 예제는 원본 리스트가 변경됩니다.
만약 원본 리스트를 변경하지 않고 새로운 리스트에 두 리스트의 요소들을 합치고 싶다면, 아래와 같이 List.from()
을 이용할 수 있습니다.
List.from(list1)
는 list1의 요소를 초기 값으로 새로운 리스트를 만듭니다. 그 뒤에 addAll()
로 list2의 요소를 추가합니다.
void main() {
List list1 = [1, 2, 3];
List list2 = [4, 5, 6];
List result = List.from(list1)..addAll(list2);
print(list1);
print(list2);
print(result);
}
Output:
[1, 2, 3]
[4, 5, 6]
[1, 2, 3, 4, 5, 6]
2. + 연산자를 이용한 방법
+
연산자를 이용하여 아래와 같이 간단히 리스트를 합칠 수 있습니다.
void main() {
List list1 = [1, 2, 3];
List list2 = [4, 5, 6];
List list3 = [7, 8, 9];
List result = list1 + list2 + list3;
print(result);
}
Output:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
3. Spread operator(...)를 이용한 방법
스프레드 연산자는 리스트가 갖고 있는 요소를 꺼내는 역할을 합니다.
아래와 같이 리스트 안에 스프레드 연산자로 리스트를 추가하면, 요소들이 새로운 리스트에 저장이 됩니다.
void main() {
List list1 = [1, 2, 3];
List list2 = [4, 5, 6];
List list3 = [7, 8, 9];
List result = [...list1, ...list2, ...list3];
print(result);
}
Output:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
4. expand()를 이용한 방법
expand()
를 이용하여 리스트 안의 리스트를 평탄화하여 하나의 리스트로 만들 수 있습니다.
void main() {
List list1 = [1, 2, 3];
List list2 = [4, 5, 6];
List list3 = [7, 8, 9];
List result = [list1, list2, list3].expand((x) => x).toList();
print(result);
}
Output:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Loading script...
Related Posts
- Flutter/Dart - Future.delayed() 사용 방법
- Flutter/Dart - Stream 사용 방법
- Flutter/Dart - 파일, 디렉토리 삭제
- Flutter/Dart - 텍스트 파일 쓰기
- Flutter/Dart - 반복문 (for, while, for-in, forEach)
- Flutter/Dart - Static 변수, 메소드 선언
- Flutter/Dart - 텍스트 파일 읽기
- Flutter/Dart - 다양한 Null 체크 방법
- Flutter/Dart - Double을 Int로 변환
- Flutter/Dart - Double을 String으로 변환
- Flutter/Dart - String을 Double로 변환
- Flutter/Dart - String을 List로 변환
- Flutter/Dart - String에서 특정 문자열 Index 찾기
- Flutter/Dart - String 길이(length)
- Flutter/Dart - 몇 초 지연시키기, sleep
- Flutter/Dart - 날짜 계산, 년/월/일 더하고 빼기
- Flutter/Dart - 날짜 문자열을 DateTime으로 변환
- Flutter/Dart - 현재 시간 가져오기, DateTime
- Flutter/Dart - Map에 key-value 추가
- Flutter/Dart - Map 순회 방법
- Flutter/Dart - Map 선언 및 초기화
- Flutter/Dart - Map에서 Entry(key-value) 제거
- Flutter/Dart - key, value로 Map 정렬
- Flutter/Dart - 리스트 복사 방법
- Flutter/Dart - 리스트 합치는 방법
- Flutter/Dart - 리스트 최대값, 최소값 찾기
- Flutter/Dart - 리스트 요소 추가, 특정 위치 추가
- Flutter/Dart - 리스트 요소 제거
- Flutter/Dart - 리스트 합계, 평균 계산
- Flutter/Dart - 리스트 요소 값 변경, 찾기
- Flutter/Dart - 리스트 중복 제거
- Flutter/Dart - 리스트 정렬 (오름차순, 내림차순)
- Flutter/Dart - 리스트 자르기, 분리하기
- Flutter/Dart - 변수 타입 체크
- Flutter/Dart - 리스트 필터링