Использование LINQ:
var uniquevalues = list.Distinct();
Это дает вам IEnumerable<string>
.
Если вы хотите массив:
string[] uniquevalues = list.Distinct().ToArray();
Если вы не используете .NET 3.5, это немного сложнее:
List<string> newList = new List<string>();
foreach (string s in list)
{
if (!newList.Contains(s))
newList.Add(s);
}
// newList contains the unique values
Другое решение (возможно, немного быстрее):
Dictionary<string,bool> dic = new Dictionary<string,bool>();
foreach (string s in list)
{
dic[s] = true;
}
List<string> newList = new List<string>(dic.Keys);
// newList contains the unique values