ホームページ >バックエンド開発 >C++ >どのlinq操作が配列の元の順序を保持しますか?

どのlinq操作が配列の元の順序を保持しますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-25 21:11:11350ブラウズ

Which LINQ Operations Preserve the Original Order of an Array?

LINQ クエリでの順序の保持

順序付けされた配列に対して LINQ 操作を使用する場合、配列の元の順序を維持することが重要です。この記事では、配列の順序を保持する操作と、それを変更または再定義する操作について検証します。

順序を絶対に保持する

次の操作は配列の順序を変更しません。

  • AsEnumerable: 既存の順序に影響を与えることなく、IEnumerable を別の IEnumerable に変換します。
  • Cast: シーケンスを維持しながら、要素を新しい型にキャストします。
  • Concat: 2 つのシーケンスを追加します。それぞれの順序を維持しながら一緒にsequence.
  • Select: 順序を変更せずにソース要素を結果要素にマップします。
  • ToArray: 順序を維持してシーケンスを配列に変換します。
  • ToList: シーケンスをリストに変換します。

順序の保持

これらの操作は、配列の順序を変更せずに要素をフィルターまたは追加します:

  • Distinct: 残りの要素の順序を維持しながら、重複した要素を削除します。 elements.
  • Except: ソース シーケンスの順序を維持して、ソース シーケンスには存在するが、指定されたシーケンスには存在しない要素を返します。
  • Intersect : 両方の順序を維持したまま、両方のシーケンスに存在する要素を返します。
  • OfType: 要素をタイプでフィルターし、一致する要素の順序を維持します。
  • Prepend: 要素をシーケンスの先頭に追加します。シーケンス (.NET の新機能) 4.7.1).
  • Skip: 残りの要素の順序を維持しながら、シーケンスの先頭から指定された数の要素をスキップします。
  • Skipwhile : 指定された条件が true の間、シーケンスの先頭から要素をスキップし、残りの要素の順序を維持します。 elements.
  • Take: 順序を維持して、シーケンスの先頭から指定された数の要素を返します。
  • Takewhile: からの要素を返します。指定された条件が true の間のシーケンスの開始。 order.
  • Where: 一致する要素の順序を維持しながら、指定された条件で要素をフィルターします。
  • Zip: 2 つのシーケンスの要素をペアにします。各シーケンスの順序を維持する、圧縮されたシーケンス (.NET 4 の新機能)。

以上がどのlinq操作が配列の元の順序を保持しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。