[c#] C #에서 값 목록을 만드는 빠른 방법?

C #에서 값 목록을 만드는 빠른 방법을 찾고 있습니다. Java에서는 아래 스 니펫을 자주 사용합니다.

List<String> l = Arrays.asList("test1","test2","test3");

아래의 명백한 것 외에 C #에 상응하는 것이 있습니까?

IList<string> l = new List<string>(new string[] {"test1","test2","test3"});



답변

C # 3.0의 Collection Initializers를 확인하십시오 .

var list = new List<string> { "test1", "test2", "test3" };


답변

혼란을 줄이려면 다음을 고려하십시오.

var lst = new List<string> { "foo", "bar" };

여기에는 C # 3.0의 두 가지 기능인 유형 유추 ( var키워드)와 목록에 대한 컬렉션 이니셜 라이저가 사용됩니다.

또는 배열로 할 수 있다면 더 짧습니다 (소량으로).

var arr = new [] { "foo", "bar" };


답변

C # 3에서는 다음을 수행 할 수 있습니다.

IList<string> l = new List<string> { "test1", "test2", "test3" };

이것은 C # 3의 새로운 컬렉션 이니셜 라이저 구문을 사용합니다.

C # 2에서는 두 번째 옵션 만 사용합니다.


답변

IList<string> list = new List<string> {"test1", "test2", "test3"}


답변

new string[]부품을 삭제할 수 있습니다 .

List<string> values = new List<string> { "one", "two", "three" };


답변

컬렉션 이니셜 라이저 를 사용하여 C #에서 코드 줄을 약간 단순화 할 수 있습니다 .

var lst = new List<string> {"test1","test2","test3"};


답변

당신은 그것을 할 수 있습니다

var list = new List<string>{ "foo", "bar" };

다음은 다른 일반적인 데이터 구조의 다른 일반적인 인스턴스화입니다.

사전

var dictionary = new Dictionary<string, string>
{
    { "texas",   "TX" },
    { "utah",    "UT" },
    { "florida", "FL" }
};

배열 목록

var array = new string[] { "foo", "bar" };

var queque = new Queue<int>(new[] { 1, 2, 3 });

스택

var queque = new Stack<int>(new[] { 1, 2, 3 });

대부분의 경우에서 볼 수 있듯이 중괄호로 값을 추가하거나 중괄호와 값이 뒤 따르는 새 배열을 인스턴스화하는 것입니다.