我讀C# AsEnumerable:。爲什麼要將AsEnumerable()方法應用於數組?
「IEnumerable接口是一個通用接口,這意味着它 定義類型可以實施循環模板的 AsEnumerable方法,一個通用的方法,可以讓你蒙上了具體 類型與其等效的IEnumerable」
此外上,一個代碼示例:
using System;
using System.Linq;
class Program
{
static void Main()
{
// Create an array type.
int[] array = new int[2];
array[0] = 5;
array[1] = 6;
// Call AsEnumerable method.
var query = array.AsEnumerable();
foreach (var element in query)
{
Console.WriteLine(element);
}
}
}
聽起來像我需要將數組轉換爲IEnumerable類型的對象使用循環(foreach?)。
但是施加的foreach直接與陣列產率完全相同的結果:
using System;
//using System.Linq;
class Program
{
static void Main()
{
// Create an array type.
int[] array = new int[2];
array[0] = 5;
array[1] = 6;
// Call AsEnumerable method.
//var query = array.AsEnumerable();
foreach (var element in array)
{
Console.WriteLine(element);
}
}
}
所以,用AsEnumerable()方法進行說明的整個網頁是無效的我。
我錯過了什麼?
+1這個例子完全是愚蠢的,網頁的作者也不知道'AsEnumerable'用於什麼。 –
感謝所有回覆者的幫助,特別是評論員[@Konrad Rudolph](http://stackoverflow.com/users/1968/konrad-rudolph)讓我擺脫困境,與感興趣語法的人混淆的方法使用。問題的關鍵是我(而不是引用的文章,我在提問之前理解的)錯過了。我幾次閱讀所有的答案,但我更喜歡附上的代碼插圖,而不是閱讀非常明智和正確的理論。似乎正確的答案爲了麻煩教育我而遭受了倒退。 –