튜플과 배열의 원소 접근 방식 차이
튜플과 배열의 원소 접근 방식 차이
- 튜플은
.
(닷) 연산자를 이용해서 원소에 접근한다.
- 배열은
[]
(대괄호) 연산자를 이용해서 원소에 접근한다.
- 이 차이는 자료구조의 성격 차이와 언어 설계 철학에 따른 것
튜플
- 각 원소의 타입과 위치가 고정되어있음
컴파일 타임(시전)
에 크기와 타입이 결정됨
- 이에 따라
tuple.0
, tuple.1
과 같이 필드 접근 방식(dot syntax) 가 적합함
배열
- 배열이나 슬라이스는 모든 원소가 동일한 타입이며
- 인덱스로 동적으로 접근하는 것이 일반적임
- 이에 따라
arr[0]
, arr[1]
처럼 인덱스 기반 접근 (bracket syntax) 를 사용하는 것이 자연스러움
- 이 접근 방식은 C 나 Pthon 등대부분의 언어에서 사용되는 전통적인 배열 접근 방식과 일치
결론
- 튜플: 정적, heterogenous (서로 다른 타입 가능), 필드 접근 중심 → dot syntax
- 배열/슬라이스: 동적, homogenous (같은 타입), 인덱스 기반 접근 → bracket syntax
1
2
3
4
5
6
7
8
9
| let tup = (1, 2, 3, "한", 3.123);
let arr = [5, 6, 7, 8, 9];
println!("{}", tup.1);
>> 2
println!("{}", arr[1]);
>> 6
println!("{:?}", &arr[1..3]);
>> [6, 7]
|
Comments