Listeyi boşaltmak istiyorum. Bu nasıl yapılır?
.net empty list, bu sayfanın MSDN'den önce gelmesinden bahsetmiyorum bile !
Listeyi boşaltmak istiyorum. Bu nasıl yapılır?
.net empty list, bu sayfanın MSDN'den önce gelmesinden bahsetmiyorum bile !
Yanıtlar:
Gerçekten çok kolay:
myList.Clear();
List<>, ArrayListya uygular IList. ;)
List<T>.Cleartemizlemesini sağlayan tüm referansları düzgün bir şekilde temizler. new List<T>bunu YAPMAZ ve fiilen tüm senaryolara uygun değildir
"Liste" ile a'yı kastediyorsanız List<T>, Clear yöntemi istediğiniz şeydir:
List<string> list = ...;
...
list.Clear();
Bunlarla ilgili MSDN belgelerinde arama yapma alışkanlığı edinmelisiniz.
İşte bu türdeki çeşitli bitlerle ilgili belgeleri nasıl hızlı bir şekilde arayacağınız:
List<T>sınıfın kendisini sağlar ( başlamanız gereken yer burasıdır )Tüm bu Google sorguları bir bağlantı demeti listeler, ancak genellikle Google'ın her durumda size verdiği ilk soruyu istersiniz.
Alternatif bir cevap vermek için (Kimin 5 eşit yanıta ihtiyacı var?):
list.Add(5);
// list contains at least one element now
list = new List<int>();
// list in "list" is empty now
Eski listeye yapılan diğer tüm referansların temizlenmediğini unutmayın (duruma bağlı olarak, istediğiniz şey bu olabilir). Ayrıca performans açısından genellikle biraz daha yavaştır.
listyeni bir referansa sahip olduğuna da dikkat edin . Bu yüzden, bu listede bir kilit kullanıyorsanız bunu kullanmayın.
Seçenek 1: Boşaltmak ve kapasitesini korumak için Clear () işlevini kullanın List<T>.
Sayım 0 olarak ayarlanır ve koleksiyonun öğelerinden diğer nesnelere başvurular da serbest bırakılır.
Kapasite değişmeden kalır.
Seçenek # 2 - Başlangıç durumuna ayarlamak için Clear () ve TrimExcess () işlevlerini kullanın List<T>.
Sayım 0 olarak ayarlanır ve koleksiyonun öğelerinden diğer nesnelere başvurular da serbest bırakılır.
Bir boşluğun kırpılması, Listenin
List<T>kapasitesini varsayılan kapasiteye ayarlar.
Tanımlar
Sayı = gerçekte içinde bulunan öğelerin sayısıList<T>
Kapasite = dahili veri yapısının yeniden boyutlandırmadan tutabileceği toplam öğe sayısı.
Yalnızca () Temizle
List<string> dinosaurs = new List<string>();
dinosaurs.Add("Compsognathus");
dinosaurs.Add("Amargasaurus");
dinosaurs.Add("Deinonychus");
Console.WriteLine("Count: {0}", dinosaurs.Count);
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
dinosaurs.Clear();
Console.WriteLine("\nClear()");
Console.WriteLine("\nCount: {0}", dinosaurs.Count);
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
Temizle () ve TrimExcess ()
List<string> dinosaurs = new List<string>();
dinosaurs.Add("Triceratops");
dinosaurs.Add("Stegosaurus");
Console.WriteLine("Count: {0}", dinosaurs.Count);
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
dinosaurs.Clear();
dinosaurs.TrimExcess();
Console.WriteLine("\nClear() and TrimExcess()");
Console.WriteLine("\nCount: {0}", dinosaurs.Count);
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
bunu yapabilirsin
var list = new List<string>();
list.Clear();
Listede Clear () fonksiyonuna ihtiyacınız var, bunun gibi.
List<object> myList = new List<object>();
myList.Add(new object()); // Add something to the list
myList.Clear() // Our list is now empty