더북(TheBook)

인덱서를 사용하여 여러 값 주고받기

속성처럼 값을 입력받고 출력해 주는 인덱서를 만들어 보겠습니다.

> class Developer
. {
.     private string name;
.     public string this[int index]  //인덱서
.     {
.         get { return name; }       //[index]로 요청하면 특정 필드 값을 반환
.         set { name = value; }      //넘어온 값은 value 키워드로 읽어 올 수 있음
.     }
. }
> var developers = new Developer();
> developers[0] = "백승수";          //인덱스와 상관없이 name 필드에 문자열이 저장됨
> Console.WriteLine(developers[0]);
백승수
> developers[1] = "이세영";
> Console.WriteLine(developers[1]);
이세영

인덱서는 속성과 동일하게 세터로 값을 입력받고 게터로 값을 반환합니다. 이 예제에서는 단일 변수인 name 필드만 사용했지만, 일반적으로 인덱서는 배열 또는 컬렉션과 함께 사용합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.