() ToList-- Yeni bir Liste Oluşturmak Mı?
Hadi bir sınıf var diyelim
public class MyObject
{
public int SimpleInt{get;set;}
}
** 3 ve ToList()
ben ve benim değiştirmek orijinal listeye geri bulaşan bir değiştirin. Diğer bir deyişle, aşağıdaki yöntem çıktısı ne olur?
public void RunChangeList()
{
var objs = new List<MyObject>(){new MyObject(){SimpleInt=0}};
var whatInt = ChangeToList(objs );
}
public int ChangeToList(List<MyObject> objects)
{
var objectList = objects.ToList();
objectList[0].SimpleInt=5;
return objects[0].SimpleInt;
}
Neden?
P/S: Eğer açık bulmak gibi görünüyor. üzgünüm Ama benimle derleyici artık yok...
CEVAP
, ToList
Evet yeni bir liste oluÅŸturur, ama bu durumda MyObject
bir başvuru türüdür çünkü o zaman yeni liste orijinal liste aynı nesnelere başvurular içerir.
Nesneyi yeni listesinde baÅŸvurulan SimpleInt
güncelleme özelliği de özgün listesinde eşdeğer nesne etkileyecektir.
(MyObject
ilan edildi gibi bir struct
yerine class
sonra yeni bir liste olur kopyalarını içeren unsurları içinde orijinal liste ve güncelleme bir özellik unsuru yeni listedeğilorijinal listesinde eşdeğer unsur etkiler.)
HTML bir dize kullanarak yerleÅŸik DOM ...
Yeni bir dosyaya yazarken otomatik ola...
Arasındaki farkı anlamak Nesne.() oluş...
Python boÅŸ bir liste oluÅŸturmak...
Yeni vs oluÅŸturmak raylar...