SORU
25 HAZİRAN 2009, PERŞEMBE


Liste<T> garanti ekleme sırası mı?

Listede 3 dizeleri var ki"1","2","3"). örneğin

Daha sonra bunları yeniden düzenlemek istiyorum "2" konumu 1 ("2","1","3"). örneğin

Bu kod (1 indexToMoveTo ayar) kullanıyorum:

listInstance.Remove(itemToMove);
listInstance.Insert(indexToMoveTo, itemToMove);

Bu iş gibi görünüyor AMA bazen garip sonuçlar alıyorum; bazen sırası yanlıştır ya da listeden silinmiş öğeleri almak!

Herhangi bir fikir? ve Liste sıralaması garanti ediyor mu?

İlgili:

Does a List<T> guarantee that items will be returned in the order they were added?

CEVAP
25 HAZİRAN 2009, PERŞEMBE


List<> sınıf sıralama garantisi yok - her şey açıkça sıralamak sürece onları eklemek ve sipariş çiftleri de dahil olmak üzere, listede korunur.

Belki de garip sonuçlar kodunuzu taşıyorsanız maddenin daha sonra liste olarak Remove() hareket tüm diğer öğeleri aşağı bir yere çağrısı önce Insert().

Bir şeyler göndermek için yeterince küçük aşağı kodunuzu kaynatın misin?

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bcbauer

    bcbauer

    7 ŞUBAT 2007
  • iNCH

    iNCH

    20 Temmuz 2009
  • isupportthegosselins

    isupporttheg

    6 Aralık 2009