私はLINQを使うのではなく、LINQを使うのではなく、LINQクエリを使って理解できることは少し遅くなりますが、便宜と表現力のためにはそれほど価値があると思います。しかし、私は、あなたがforループでクエリの結果を使用する場合、どれだけ遅いかについて少し混乱しています。このクエリにLINQを使用する必要がありますか?
「Locations」というセットと「Items」というオブジェクトのセットがあります。それぞれの「アイテム」は1つの「場所」にしか属しません。私は同じ場所の下にあるアイテムをお互いにリンクしたい。
For Each it as Item in Items.Where(Function(i) i.Location.equals(Me.Location))
Me.LinkedItems.Add(it)
Next
今私:私はLINQを使用していた場合、それは代わりに、これだろうしかし
For Each it as Item in Items
If it.Location.equals(Me.Location)
Me.LinkedItems.Add(it)
End If
Next
:私はループ「は、それぞれについて」通常を使用してこれを実行した場合には、このようなものになるだろう質問は、2番目の(LINQ)オプションがクエリを完了するために 'Items'セット全体を1回ループし、結果をループしてリストに追加して、実質的に2つのループになるか、最初の(For Each)オプションのようにループしますか?答えが前者なら、私はこの状況でLINQを使うのは愚かであると仮定します。
フェアー!私はそれを最初に見つけた! ;) – RCIX
素晴らしい、まさに私が感謝のために探していたもの! – link664