2016-12-09 18 views
-1

我想弄清楚什麼LINQ查詢是要對arraylist進行計算。對ArrayList的LINQ查詢

我有一個結構:

Public Structure CC 
    Dim Con As String 
    Dim Len As Integer 
End Structure 

這是填充,進入到一個ArrayList(簡單示):

  cc.Con = "A" : cc.Len = 10 : aList.Add(cc) 
      cc.Con = "B" : cc.Len = 10 : aList.Add(cc) 
      cc.Con = "A" : cc.Len = 30 : aList.Add(cc) 
      cc.Con = "B" : cc.Len = 50 : aList.Add(cc) 

所以,我怎麼能添加A和B,並得到使用的總計linq查詢?基本上,我只是希望它吐出A = 40 B = 60

任何和所有的幫助表示讚賞......我卡住,因爲這是我通常只用於列表。

Dim groups = lItems.GroupBy(Function(value) value) 
+0

請不要使用'ArrayList' - 這是2001年。現在是2016年。使用'List(Of CC)'代替。 – Enigmativity

+0

如果你不能使用'List '(儘管我無法想象爲什麼......),你有沒有考慮過在'ArrayList'上調用'ToArray()'方法? ArrayList可能不知道LINQ擴展,但一個好的舊數組應該。儘管如此,如果你能*使用「清單」,那就這樣做。 – Tim

回答

0

,因爲它們是過時使用的List(Of CC)而不是ArrayList

Dim aCount = Aggregate cc In aList Where cc.Con = "A" Into Sum(cc.Len) 

B組同樣的事情。