INT에 저장된 인덱스의 문자열의 목록을 만들려면 LINQ에 의해 나는 짐작한다 :) 어떻게?LINQ이 내가 가진 무엇 []
답변
인덱스의 독특한 세트를 가정. 우리는 단어에서 시작하여 일치하는 색인을 찾기보다는 각 단어를 붙잡을 수 있습니다.
List<string> result = indexes.Select(i => words[i]).ToList();
이 버전은 색인이 단어보다 작다고 가정 할 때 훨씬 빠릅니다. (100 개의 색인과 20,000 단어는 귀하의 사업에서 2 천만 건, 광산에서는 100 건).
글쎄, 한 라이너 만 :
result = Enumerable.Range(0, words.Count())
.Where(indexes.Contains)
.Select(idx => words[idx])
.ToList();
한 줄로 완전히 쓸 수 있습니다 :-) –
'Where (indexes.Contains) '와의 거래는 무엇입니까? 'Where (w => indexes.Contains (w))'라고 써야한다고 생각했습니다. –
@EricJ .: 유효한 함수 유형이 일치하는 한. 이 경우 두 함수 모두'Func
- 1. 여전히이 내가 가진 무엇
- 2. MessageSource.MessageSink이 내가 가진 무엇
- 3. 방법이 내가 가진 무엇
- 4. 문제는 현재이 내가 가진 무엇
- 5. 쓰기 ObservableCollection에 내가 가진 무엇
- 6. 방법이 내가 가진 무엇 MySQL의
- 7. 지정 빌드 의존성이 내가 가진 무엇
- 8. 변수는 여기에 내가 가진 무엇 기능
- 9. 자바 스크립트 기능이 내가 가진 무엇
- 10. 안드로이드 - 내 애플 리케이션 내가 가진 무엇
- 11. libGDX 1.4.1이 내가 가진 무엇 애니메이션
- 12. 런타임 인스턴스 내가 가진 무엇 그래서 여기
- 13. 곱하기 두 테이블은이 내가 가진 무엇
- 14. CSS의 웹킷 전환이 내가 가진 무엇
- 15. XNA 모델하지 조언 내가 가진 무엇
- 16. Linq이 많을까요?
- 17. 내가 가진
- 18. CakePHP1.3 : 이온 큐브 로더 + 라이센스 검증 : 내가 가진 무엇
- 19. PHP 메일() 함수는 문자를 변경하고이 내가 가진 무엇
- 20. 가장 좋은 방법은 문자를 추가하는 * 내가 가진 무엇 C
- 21. 맵에 대한 div의 부동이 내가 가진 무엇 사진
- 22. 개체 배열 올바른 사용 방법? 내가 가진 무엇
- 23. 코어 데이터 접근 자 - 전에 내가 가진 무엇
- 24. 내가 가진
- 25. MATLAB 내가 원하는 무엇
- 26. /탭 내가 원하는 무엇
- 27. 내가 원하는 무엇 아약스
- 28. 내가 시도 무엇 OpenShift
- 29. 내가 지금까지 가지고 무엇
- 30. 내가 원하는 무엇
' IEnumerable'? 여전히 .ToList()가 필요합니까? –
@EricJ .: 질문은리스트를 요구했지만, 사람들은 알고리즘의 기능이 무엇이든간에 요구하는 경향이 있음을 발견했습니다. 질문과 일치하도록 수정되었습니다. – Guvante
동의하면, 인터페이스가 더 나은 코드 재사용을 제공 할 때 사람들이 인터페이스보다는 구체적인 클래스를 사용한다는 것은 종종 사실입니다. –