의 HashSet에 대한 AddRange 동등한 있습니다. 다른 컬렉션을 HashSet에 추가하는 가장 좋은 방법은 무엇입니까?당신이 할 수있는 목록으로 C#을
답변
HashSet의 경우 이름은 UnionWith입니다.
이것은 HashSet이 작동하는 독특한 방법을 나타 내기위한 것입니다. 컬렉션에있는 임의의 요소 세트를 안전하게 추가 할 수 없기 때문에 일부 요소는 자연적으로 증발 할 수 있습니다.
나는, 그러나 너무 IEnumerable을위한 과부하가 :있다 UnionWith는 "다른 HashSet의 합병"후 그 이름을 소요 생각이 하나의 방법입니다
:
public static class Extensions
{
public static bool AddRange<T>(this HashSet<T> @this, IEnumerable<T> items)
{
bool allAdded = true;
foreach (T item in items)
{
allAdded &= @this.Add(item);
}
return allAdded;
}
}
@quetzalcoatl이 (가) return statement ...을 (를) 놓쳤습니다. – RoadieRich
방금 편집을 보았습니다 :) 그냥'? :'연산자 대신 간단히'added & = @ this.Add (item)'이 충분하고 아마도 더 읽기 쉬울 것입니다. 하지만 그건 물론 화장품 일뿐입니다. – quetzalcoatl
@quetzalcoatl 나는 그것에 관해서 막 물어 보려고했다. 그것은 나에게 너무 이르다. – RoadieRich
- 1. C을 찾는 ++ 구현()`
- 2. jsfiddle 코드 작동하지만 당신이 할 수있는
- 3. 당신이 볼 수있는
- 4. 당신이 기여할 수있는 프로젝트가 있습니까?
- 5. 은 당신이 윈도우 폰에서 재생중인 미디어를 캡처 할 수있는 경우
- 6. 주조 INT는 당신이 할 수있는 기존의 C에서 + + 스타일의 캐스팅
- 7. 나는 당신이 할 수있는 UIBarButton 정상 버튼으로 속성
- 8. bashrc에이 - 당신이 할 수있는, 내가 C++ 알고있는 변수
- 9. 어떻게 당신이 할 수있는 다음과 같은 선으로 안드로이드
- 10. C/C을 찾고 ++ 언어와 표준 라이브러리 사양
- 11. 당신이 인쇄를 시도 할
- 12. 당신이 달성 할 방법
- 13. 당신이 ".
- 14. XML을 사전과 목록으로 변환 할 수있는 방법이 있습니까? 에
- 15. 당신이
- 16. 당신이
- 17. 당신이
- 18. 당신이 CLLE에서 변수를 손질 수있는 방법 CLLE
- 19. 당신이
- 20. 당신이
- 21. 당신이
- 22. sql_mode를 값 목록으로 설정할 수있는 방법
- 23. 당신이
- 24. 당신이
- 25. 당신이
- 26. 당신이
- 27. 목록으로
- 28. 당신이 할 수있는 일은 자바 스크립트만으로는 할 수 없으며 플래시를 사용할 수 없습니다.
- 29. 당신이 UID
- 30. 소스 목록으로 draggable을 사용하면 함께 정렬 할 수있는 항목을 연결할 수 있습니까?
이럴'HashSet' (와'ISet')은 수학적으로 설정된 용어로 만들어졌습니다. 'UnionWith'는 더 가까운 용어였습니다. 'Except'를 제외하고, 수학적으로 말하면서 '빼기'라는 명칭이 분명히 있어야합니다. –