728x90
SMALL
Tuple 이란?
- C#에서 Tuple(튜플)은 다양한 데이터 형식의 요소들을 담고 있는 간단한 자료구조
- 여러 값을 그룹화하고 반환하기 위해 매우 편리하다.
Tuple의 특징
- 여러 값의 그룹화: Tuple은 서로 다른 형식의 요소들을 하나의 객체로 묶어서 다룰 수 있다. 예를 들어, int, string, bool 등 다양한 형식의 값을 함께 그룹화할 수 있다.
- 익명 타입: Tuple은 이름이 없는 익명의 타입이다. 일반적인 클래스나 구조체와 달리 클래스나 구조체의 이름이 필요하지 않다.
- Immutable (불변): Tuple은 한 번 생성되면 변경할 수 없다. 값을 읽을 수는 있지만, 내부의 요소를 변경할 수는 없다.
- 패턴 매칭: C# 7.0부터 패턴 매칭(pattern matching)과 함께 사용할 수 있어서, 간결하게 Tuple의 요소를 추출하고 사용할 수 있다.
🔔주의 사항🔔
- Unity에서 Tuple을 사용하려면 다음과 같이 System 네임스페이스를 추가해야 한다.
기본 구조 - 테스트 코드
var person = Tuple.Create(1, "John", true); - [이 부분은 Tuple.Create 메서드를 사용하여 Tuple 객체 person을 생성]
var (id, name, active) = person; - [이 부분은 Tuple의 요소들을 분해하여 각 요소를 새로운 변수인 id, name, active에 할당, 이를 통해 Tuple의 각 요소를 더 직관적이고 편리하게 사용할 수 있다.]
실행 결과
즉 아래와 같이 쉽고 간편하게 사용할 수 있다.
Tuple을 사용하여 복합적인 데이터 구조를 생성하고 각 요소에 접근하는 예제 - 테스트 코드
- 첫 번째 요소: 1
- 두 번째 요소: 2
- 세 번째 요소: 3
- 네 번째 요소: 4
- 다섯 번째 요소: 5
- 여섯 번째 요소: 6
- 일곱 번째 요소: 7
- 여덟 번째 요소: Tuple.Create(8, 9, 10, 11, 12, 13)
numbers.Item1은 Tuple의 첫 번째 요소인 1을 반환, numbers.Item7은 일곱 번째 요소인 7을 반환
numbers.Rest는 Tuple의 나머지 요소를 포함하는 Tuple을 반환
실행 결과
728x90
'C#, 자료구조' 카테고리의 다른 글
[자료구조] - Collection: ArrayList와 List 차이점 (0) | 2024.07.25 |
---|---|
[자료구조] - Array(배열) 와 List(리스트) 차이점 (0) | 2024.06.24 |
Generic Collectin 메서드 (0) | 2024.04.05 |
[자료구조] - Collection이란? (0) | 2024.04.03 |
[자료구조] - 자료구조란 무엇일까? (2) | 2024.03.26 |