Directory.EnumerateFilesvs和有GetFiles什么區(qū)別?顯然,一個返回數(shù)組,另一個返回Enumerable。還要別的嗎?
3 回答

慕少森
TA貢獻2019條經(jīng)驗 獲得超9個贊
從文檔:
EnumerateFiles和GetFiles方法的區(qū)別如下:使用EnumerateFiles時,可以在開始返回整個集合之前開始枚舉名稱集合;否則,您可以開始枚舉名稱集合。使用GetFiles時,必須等待返回整個名稱數(shù)組,然后才能訪問該數(shù)組。因此,當您處理許多文件和目錄時,EnumerateFiles可能會更有效。
因此,基本上,EnumerateFiles返回值a IEnumerable可以稍作延遲評估,而GetFiles返回值a string[]必須先完全填充后才能返回。

慕哥6287543
TA貢獻1831條經(jīng)驗 獲得超10個贊
使用EnumerateFiles時,如果再使用,則所有速度都會丟失.Last
。這當然是有道理的,因為要獲取最后一個文件,將需要枚舉所有文件,然后獲取最后一個文件。
但是,使用.First
或.FirstOrDefault
變得非??欤驗樗皇亲プ×说谝豁棽⒗^續(xù)前進。
- 3 回答
- 0 關(guān)注
- 2656 瀏覽
添加回答
舉報
0/150
提交
取消