溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linq中怎么查詢二維數(shù)組

發(fā)布時間:2021-08-12 15:48:52 來源:億速云 閱讀:153 作者:Leah 欄目:編程語言

這篇文章給大家介紹Linq中怎么查詢二維數(shù)組,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

Linq查詢二維數(shù)組

以下代碼為在一個4*4的二維int數(shù)組中將大于5的元素查出:

static   void  Main( string [] args)  {  int [,] array =  new   int [4, 4];  for  ( int  i = 0; i < 4; i++)  for  ( int  j = 0; j < 4; j++)  array[i, j] = (i + 1) * (j + 1);   var intQuery = from i  in  array.Cast< int >()  where i > 5  select i;   foreach  ( int  i  in  intQuery)  Console.WriteLine(i);  }

由于二維數(shù)組無法直接轉換為IEnumerable<T>類型,所以,通過其Cast<T>()方法先將其轉換為IEnumerable<T>再進行查詢
Enumerable. Cast< TResult > () 泛型方法 將 IEnumerable 的元素轉換為指定的類型。

此方法通過使用延遲執(zhí)行實現(xiàn)。即時返回值為一個對象,該對象存儲執(zhí)行操作所需的所有信息。只有通過直接調用對象的 GetEnumerator 方法或使用 Visual C# 中的 foreach (或 Visual Basic 中的 For Each )來枚舉該對象時,才執(zhí)行此方法表示的查詢。

Cast< TResult>() (IEnumerable) 方法通過提供必要的類型信息,可在非泛型集合上調用標準查詢運算符。例如,ArrayList 并不實現(xiàn) IEnumerable< T> ( ) ,但通過調用 ArrayList 對象上的 Cast< TResult> ( ) (IEnumerable) ,就可以使用標準查詢運算符查詢該序列。

如果元素無法強制轉換為 TResult 類型,則此方法將引發(fā)異常。若要只獲取可以強制轉換為 TResult 類型的元素,請使用 OfType< TResult> () 方法,而不是 Cast< TResult> ( ) (IEnumerable) 。

在查詢表達式中,顯式類型迭代變量會轉換為 Cast< TResult> ( ) (IEnumerable) 的一個調用。

關于Linq中怎么查詢二維數(shù)組就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI