Operadores de partição em LINQ
Divida uma sequência de entrada em duas seções separadas sem reorganizar os elementos da sequência e depois retornar um deles.
Operador | Descrição | Sintaxe de expressão de consulta C # | Sintaxe de expressão de consulta VB |
---|---|---|---|
Pular | Pula um número especificado de elementos em uma sequência e retorna os restantes | Não aplicável | Pular |
SkipWhile | Igual ao de Skip, com a única exceção de que o número de elementos a serem ignorados é especificado por uma condição booleana | Não aplicável | Pular enquanto |
Levar | Pegue um determinado número de elementos de uma sequência e pule os restantes | Não aplicável | Levar |
TakeWhile | O mesmo que Take, exceto pelo fato de que o número de elementos a serem tomados são especificados por uma condição booleana | Não aplicável | Demorar um pouco |
Exemplo de pular - expressão de consulta
VB
Module Module1
Sub Main()
Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}
Dim query = From word In words
Skip 4
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Console.WriteLine(str)
Next
Console.ReadLine()
End Sub
End Module
Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -
there
was
a
jungle
Exemplo de Skip While - Query Expression
VB
Module Module1
Sub Main()
Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}
Dim query = From word In words
Skip While word.Substring(0, 1) = "t"
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Console.WriteLine(str)
Next
Console.ReadLine()
End Sub
End Module
Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -
once
upon
a
was
a
jungle
Exemplo de Take - Expressão de Consulta
VB
Module Module1
Sub Main()
Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}
Dim query = From word In words
Take 3
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Console.WriteLine(str)
Next
Console.ReadLine()
End Sub
End Module
Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -
once
upon
a
Exemplo de Take While - Query Expression
VB
Module Module1
Sub Main()
Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}
Dim query = From word In words
Take While word.Length < 6
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Console.WriteLine(str)
Next
Console.ReadLine()
End Sub
End Module
Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -
once
upon
a
time
there
was
a