2016-12-14 4 views
3

인덱서를 사용하면 어떤 이점이 있는지 설명 할 수 있습니까? 이 이상인덱서의 이점은 무엇입니까?

MyClass target = new MyClass(); 
string value = target[0]; 

: 사용의 이점은 무엇

public class MyClass 
{ 
    private List<string> list = new List<string>() 

    public string this[int value] 
    { 
     get 
     { 
      return list[value]; 
     } 
    } 

    public string GetValue(int value) 
    { 
      return list[value]; 
    } 
} 

MyClass target = new MyClass(); 
string value = target.GetValue(0); 
+4

당신은'GetValue'를 쓸 필요가 없으며 클래스가 인덱서가있는 콜렉션이라는 것을 알고 있지만 인덱서에는 이름이 없으므로 가독성을 잃을 수 있으므로 오용하지 마십시오. –

+2

그것은 * 구문 설탕 * 장점은 가독성 * –

+0

@DmitryBychenko : 가독성은 이점이 없으며 인덱서에 이름이 없기 때문에 그 반대 일 수 있습니다. –

답변

7

그것은 순수하게 구문 읽기 쉽고 편리/표현이다. 그것은 여전히 ​​방법으로 구현됩니다. 따라서 : target[0]이 더 분명하고 편리하며 읽기 쉬운 시나리오 인 경우 : 인덱서를 사용하십시오.

관련 문제