Imports System
Public Class Example
Public Shared Sub Main()
Dim dinosaurs() As String = { "Compsognathus", _
"Amargasaurus", "Oviraptor", "Velociraptor", _
"Deinonychus", "Dilophosaurus", "Gallimimus", _
"Triceratops" }
Console.WriteLine()
For Each dinosaur As String In dinosaurs
Console.WriteLine(dinosaur)
Next
Console.WriteLine(vbLf & _
"Array.Exists(dinosaurs, AddressOf EndsWithSaurus): {0}", _
Array.Exists(dinosaurs, AddressOf EndsWithSaurus))
Console.WriteLine(vbLf & _
"Array.TrueForAll(dinosaurs, AddressOf EndsWithSaurus: {0}", _
Array.TrueForAll(dinosaurs, AddressOf EndsWithSaurus))
Console.WriteLine(vbLf & _
"Array.Find(dinosaurs, AddressOf EndsWithSaurus): {0}", _
Array.Find(dinosaurs, AddressOf EndsWithSaurus))
Console.WriteLine(vbLf & _
"Array.FindLast(dinosaurs, AddressOf EndsWithSaurus): {0}", _
Array.FindLast(dinosaurs, AddressOf EndsWithSaurus))
Console.WriteLine(vbLf & _
"Array.FindAll(dinosaurs, AddressOf EndsWithSaurus):")
Dim subArray() As String = _
Array.FindAll(dinosaurs, AddressOf EndsWithSaurus)
For Each dinosaur As String In subArray
Console.WriteLine(dinosaur)
Next
End Sub
' Search predicate returns true if a string ends in "saurus".
Private Shared Function EndsWithSaurus(ByVal s As String) _
As Boolean
' AndAlso prevents evaluation of the second Boolean
' expression if the string is so short that an error
' would occur.
If (s.Length > 5) AndAlso _
(s.Substring(s.Length - 6).ToLower() = "saurus") Then
Return True
Else
Return False
End If
End Function
End Class
' This code example produces the following output:
'
'Compsognathus
'Amargasaurus
'Oviraptor
'Velociraptor
'Deinonychus
'Dilophosaurus
'Gallimimus
'Triceratops
'
'Array.Exists(dinosaurs, AddressOf EndsWithSaurus): True
'
'Array.TrueForAll(dinosaurs, AddressOf EndsWithSaurus: False
'
'Array.Find(dinosaurs, AddressOf EndsWithSaurus): Amargasaurus
'
'Array.FindLast(dinosaurs, AddressOf EndsWithSaurus): Dilophosaurus
'
'Array.FindAll(dinosaurs, AddressOf EndsWithSaurus):
'Amargasaurus
'Dilophosaurus