[Flutter / Dart] 다트 3.0 신규 문법 (레코드)
2025. 4. 11. 02:16
1. 레코드
- 레코드는 포지셔널 파라미터 or 네임드 파라미터 중 한 가지 방식을 적용하여 사용할 수 있음
- 두 방식 모두 괄호 안에 쉼표로 구분하여 작성
1.1 포지셔널 파라미터를 이용한 레코드
- 포지셔널 파라미터를 이용한 레코드는 포지셔널 파라미터로 표시한 타입 순서를 반드시 지켜야함.
// 레코드
// 포지셔널 파라미터를 이용한 레코드
void main() {
// 정확히 위치에 어떤 타입의 값이 입력될지 지정할 수 있음
// (String, int)는 첫 번째 값은 String타입, 두 번쨰 값은 int타입임
(String, int) minji = ("민지", 20);
print(minji);
}
만약, 레코드의 모든 값을 사용하지 않고 특정 순서의 레코드 값을 가져오고 싶다면 $
를 사용하면 됨
void main() {
(String, int) minji = ("민지", 20);
print(minji.$1); // 민지
print(minji.$2); // 20
print(minji); // 민지, 20
}
1.2 네임드 파라미터를 이용한 레코드
- 네임드 파라미터는 입력 순서를 지킬 필요가 없음
- 다만 네임드 파라미터는 소괄호에 중괄호를 중첩하여 타입과 변수 이름을
,
로 구분하고 명시해줘야함
// 네임드 파라미터를 이용한 레코드
void main() {
// 다른 네임드 파라미터와 마찬가지로 순서 상관X
({String name, int age}) minji = (name: "민지", age: 20);
print(minji); // (age: 20, name: 민지)
}
https://github.com/Leedoseo/Flutter_Dart_3.0
GitHub - Leedoseo/Flutter_Dart_3.0
Contribute to Leedoseo/Flutter_Dart_3.0 development by creating an account on GitHub.
github.com
https://www.notion.so/Dart-Flutter-1cf9fd9f157980a5ab7efad394810871?pvs=4
Dart / Flutter | Notion
Made with Notion, the all-in-one connected workspace with publishing capabilities.
www.notion.so
출처 : 코드 팩토리의 플러터 프로그래밍
'Dart 언어' 카테고리의 다른 글
[Flutter / Dart] 다트 3.0 신규 문법 (Switch문) (0) | 2025.04.11 |
---|---|
[Flutter / Dart] 다트 3.0 신규 문법 (구조 분해) (0) | 2025.04.11 |
[Flutter / Dart] 비동기 프로그래밍 (0) | 2025.04.09 |
[Flutter / Dart] 객체지향 프로그래밍(스태틱과 캐스케이드 연산자) (1) | 2025.04.08 |
[Flutter / Dart] 객체지향 프로그래밍(추상과 제네릭) (0) | 2025.04.08 |