최근에 Java에서 c #을 사용하여 시작했습니다. 색인으로 목록 항목을 얻는 방법을 찾지 못하는 것 같습니다. Java에서 목록의 첫 번째 항목을 얻으려면 다음과 같습니다.
list1.get(0);
C #에서 이에 상응하는 것은 무엇입니까?
답변
list1[0];
목록 유형에 인덱서가 정의되어 있다고 가정합니다.
답변
목록에서 ElementAt 확장 메소드를 사용할 수 있습니다.
예를 들면 다음과 같습니다.
// Get the first item from the list
using System.Linq;
var myList = new List<string>{ "Yes", "No", "Maybe"};
var firstItem = myList.ElementAt(0);
// Do something with firstItem
답변
Visual Basic, C # 및 C ++에는 이름을 사용하지 않고 Item 속성에 액세스하기위한 구문이 있습니다. 대신 List를 포함하는 변수는 마치 배열 인 것처럼 사용됩니다.
List[index]
예를 들어 https://msdn.microsoft.com/en-us/library/0ebtbkkc(v=vs.110).aspx를 참조하십시오.
답변
오래된 질문이지만이 스레드가 최근에 활성화되어 있음을 알았으므로 계속해서 2 센트를 던져 보겠습니다.
Mitch가 말한 것과 거의 같습니다. 적절한 인덱싱을 가정하면 배열에 액세스하는 것처럼 대괄호 표기법을 사용할 수 있습니다. 그러나 숫자 인덱스를 사용하는 것 외에도 멤버의 이름이 특정인 경우 다음과 같이 입력하여 일종의 동시 검색 / 액세스를 수행 할 수 있습니다.
var temp = list1["DesiredMember"];
더 많이 알지?
답변
.NET List
데이터 구조는 Array
“변경 가능한 쉘”에 있습니다.
따라서 다음과 같은 요소에 액세스하기 위해 색인을 사용할 수 있습니다.
var firstElement = myList[0];
var secondElement = myList[1];
시작 C #을 8.0 사용할 수있는 Index
및 Range
요소에 액세스하기위한 클래스. 시퀀스의 끝에서 액세스하거나 시퀀스의 특정 부분에 액세스 할 수 있습니다.
var lastElement = myList[^1]; // Using Index
var fiveElements = myList[2..7]; // Using Range, note that 7 is exclusive
인덱스와 범위를 함께 결합 할 수 있습니다.
var elementsFromThirdToEnd = myList[2..^0]; // Index and Range together
또한 LINQ ElementAt
방법을 사용할 수 있지만 99 %의 경우 실제로 필요하지 않으며 성능 솔루션이 느려집니다.
답변
색인을 사용하여 목록 요소에 액세스 할 수 있습니다.
List<string> list1 = new List<string>();
list1[0] //for getting the first element of the list