Uniq в C # - PullRequest
       37

Uniq в C #

3 голосов
/ 19 февраля 2009

Есть ли простой способ получить только уникальные значения из списка строк в C #? Мой гугл-фу подводит меня сегодня.

(Я знаю, что могу поместить их в другую структуру и вытащить их снова. Я ищу глупо-легкий, как метод .uniq Руби. В C # все чертовски хорошо, так что я, вероятно, просто использую неправильный синоним.)

В частности, это исходит от Linq, поэтому, если бы у Linq был встроенный способ выбора только уникальных строк, это было бы еще круче.

Ответы [ 2 ]

9 голосов
/ 19 февраля 2009
List<string> strings = new string[] { "Hello", "Hello", "World" }.ToList();

strings = strings.Distinct().ToList();
6 голосов
/ 19 февраля 2009

In .net 3.5: -

var strings = new List<string> { "one", "two", "two", "three" };
var distinctStrings = strings.Distinct(); // IEnumerable<string>
var listDistinctStrings = distinctStrings.ToList(); // List<string>

Бум Шака-Лака!

...