Bu dizi olduğunu farz edelim: BenimDizi (0) = "aaa" BenimDizi (1) = "bbb" BenimDizi (2) = "aaa" Bir dizinin benzersiz değerlerini .net içinde nasıl edinebilirim?
bir .net işlevi var mı hangi verebilir bana benzersiz değerler? outputArray (0) = "aaa" outputArray (1) = "bbb" Bir anahtarla eklemek için bir sözlük kullanabilirsiniz
5
A
cevap
8
sizi varsayarsak var .Net 3.5/LINQ:
string[] OutputArray = MyArray.Distinct().ToArray();
2
ve sizi: Ben fonksiyonun bir çıktısı olarak böyle bir şey istiyorum Anahtarın zaten mevcut olup olmadığını kontrol edin.
string[] myarray = new string[] { "aaa", "bbb", "aaa" };
Dictionary mydict = new Dictionary();
foreach (string s in myarray) {
if (!mydict.ContainsKey(s)) mydict.Add(s, s);
}
1
.NET 3.5'de bulunan HashSet sınıfını kullanın.
8
bir çözüm aşağıdaki örnekte olduğu gibi LINQ kullanmak olabilir:
int[] test = { 1, 2, 1, 3, 3, 4, 5 };
var res = (from t in test select t).Distinct<int>();
foreach (var i in res)
{
Console.WriteLine(i);
}
basacaktır Bu beklenen:
1
2
3
4
5