タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

tipsとalgorithmと.netに関するlepton9のブックマーク (1)

  • ループ回数で見るLINQの遅延評価 - ひろぐ

    LINQには、遅延評価によるイテレーターのループを最小限に行う仕組みが提供されていますが、 全てのメソッドにおいて遅延評価がされるわけではありません。 ToList、Any、Count、First、Singleなどの、 型変換するメソッドや、要素を詳細に判断する必要があるメソッドは、 だいたいその時点で何らかのシーケンスが生成されます。 どのタイミングでシーケンスが生成されるか(ループが発生するか)を正しく理解しないと、 無駄なループにより逆に時間がかかってしまうことがあります。 いくつか例を挙げて、ループの回数を見てみようと思います。 例)100件の要素に対し、2回Whereを行う場合 1回目のWhereで50件に絞り込まれ、2回目のWhereで10件に絞り込まれると仮定します。 var hoge = Array.Where(Func1) .Where(Func2); この時、Where

    ループ回数で見るLINQの遅延評価 - ひろぐ
  • 1