活代码LINQ——09

一、代码

' Fig. 9.7: LINQWithListCollection.vb
' LINQ to Objects using a List(Of String).
Module LINQWithListCollection
   Sub Main()
      ' populate a List of Strings
      Dim items As New List(Of String)
      items.Add("aqua") ' add "aqua" to the end of the List
      items.Add("rust") ' add "rust" to the end of the List
      items.Add("yellow") ' add "yellow" to the end of the List
      items.Add("red") ' add "red" to the end of the List

      ' select Strings starting with "r" and convert them to uppercase
      Dim startsWithR = _
         From item In items _
         Where item.StartsWith("r") _
         Order By item _
         Select item.ToUpper()

      ' display query results
      For Each item In startsWithR
         Console.Write("{0} ", item)
      Next

      Console.WriteLine() ' output end of line

      items.Add("ruby") ' add "ruby" to the end of the List
      items.Add("saffron") ' add "saffron" to the end of the List

      ' print updated query results
      For Each item In startsWithR
         Console.Write("{0} ", item)
      Next

      Console.WriteLine() ' output end of line
   End Sub ' Main
End Module ' LINQWithListCollection

' **************************************************************************
' * (C) Copyright 1992-2009 by Deitel & Associates, Inc. and               *
' * Pearson Education, Inc. All Rights Reserved.                           *
' *                                                                        *
' * DISCLAIMER: The authors and publisher of this book have used their     *
' * best efforts in preparing the book. These efforts include the          *
' * development, research, and testing of the theories and programs        *
' * to determine their effectiveness. The authors and publisher make       *
' * no warranty of any kind, expressed or implied, with regard to these    *
' * programs or to the documentation contained in these books. The authors *
' * and publisher shall not be liable in any event for incidental or       *
' * consequential damages in connection with, or arising out of, the       *
' * furnishing, performance, or use of these programs.                     *
' **************************************************************************

  二、运行结果:

活代码LINQ——09

来源:Visual Basic 2008 How to  Program           P305