VB2005 Поиск / Поиск в структуре списка - PullRequest
0 голосов
/ 18 октября 2011

VB2005: я искал хороший пример в течение нескольких часов и нашел несколько, но, к сожалению, они предназначены для VB2008 +. В настоящее время я работаю в VB2005, поэтому кажется, что в этом выпуске было труднее.

У меня есть класс для очка

Public Class cPoint
    Public Speed As Integer
    Public Alt As Integer
    Public Status As String = ""
    Public Err As String = ""
End Class

Я заполняю список точек с помощью MyPoints = List (of cPoint). Теперь все, что мне нужно сделать, это найти первое совпадение с предоставленной скоростью и альт. Я пытался

Dim p As cPoint = MyPoints.Find(Function(item As cPoint) item.Speed = 85)

Но это не работает в VB2005, намного меньше работает с более чем 1 фильтром. Я просто не могу найти хороший пример, который работает в VB2005. Я мог бы перебрать список, но он довольно большой и не очень эффективный. Любые советы о том, как я могу сделать это в VB2005?

~ * 1011 AGP *

1 Ответ

1 голос
/ 18 октября 2011

В VB.Net 2005 отсутствует лямбда-поддержка, поэтому этот стиль запроса не будет работать. Самая простая версия, которая будет, это вручную выполнить цикл For Each.

My p As cPoint = Nothing
For Each item in MyPoints 
  If item.Speed = 85 Then
    p = item
    Exit For 
  End If
Next
...