為什麼需要IEnumerable轉成List

2022-01-26 03:43:53 字數 1507 閱讀 8665

這其實涉及到c#的兩個問題:

引用物件的賦值是不是如你所預期;

為什麼需要ienumerable轉成list

不看結果,先看**:

'''c#

var indexarray = new int;

var members = indexarray.select (i => new member);

console.writeline ("case 1");

var member1 = members.firstordefault (m => m.index == 1);

var member1_c = member1;

var member1_w = members.firstordefault (m => m.index == 1);

member1.name = "yang shen (case 1)";

console.writeline (member1.equals(member1_w));

console.writeline (member1.equals(member1_c));

console.writeline (member1_w.name);

console.writeline (member1_c.name);

console.writeline ("case 2");

var memberlist = members.tolist ();

var member1inlist = memberlist.firstordefault (m => m.index == 1);

var member1inlist_w = memberlist.firstordefault (m => m.index == 1);

member1inlist.name = "yang shen (case 2)";

console.writeline (member1inlist.equals(member1inlist_w));

console.writeline (member1inlist_w.name);

console.writeline ("case 3");

var member2 = memberlist[memberlist.findindex(m=>m.index ==2)];

var member2_w = memberlist[memberlist.findindex(m=>m.index ==2)];

member2.name = "yang shen (case 3)";

console.writeline (member2.equals(member2_w));

console.writeline (member2_w.name);

不看執行結果,目測一下各個console.writeline的輸出是什麼??

有意思,同樣通過 firstordefault 獲得乙個集合中的物件,不過,ienumerable每次都會返回不同的例項,而list則返回的是同乙個例項:)

為什麼需要PKI

為什麼需要pki 隨著電子商務的迅速發展,資訊保安已成為焦點問題之一,尤其是網上支付和網路銀行對資訊保安的要求顯得更為突出。為了能在網際網路上開展安全的電子商務活動,公開金鑰基礎設施 pki,public key infrastructure 逐步在國內外得到廣泛應用。我們是否真的需要pki,pki...

為什麼需要prototype

1.new object var newobj new object newobj.name keti newobj.color red newobj.changecolor function color 這種方法看上去很蠢,所以我們找到另一種方法 使用literal直接建立,看上去要優雅得多 2....

為什麼需要bootloader

受微控制器和arm7等小型cpu裝置程式設計思維的影響,開始對嵌入式linux和pc中存在bootloader bios的意義有了疑問 bootloader到底有沒有必要存在呢?答案是 大部分情況下是有必要的。首先,bootloader的作用是在硬體商店後執行的第一段軟體 也叫引導引導程式,是在作業...