Partizionamento dei dati (Visual Basic)
Il partizionamento in LINQ è l'operazione di divisione di una sequenza di input in due sezioni senza ridisposizione degli elementi e la successiva restituzione di una delle sezioni.
La figura seguente illustra i risultati di tre diverse operazioni di partizionamento in una sequenza di caratteri. La prima operazione restituisce i primi tre elementi nella sequenza. La seconda operazione ignora i primi tre elementi e restituisce gli elementi rimanenti. La terza operazione ignora i primi due elementi nella sequenza e restituisce i tre elementi successivi.
Nella sezione seguente sono elencati i metodi degli operatori di query standard che eseguono la partizione delle sequenze.
Operatori
Nome operatore | Descrizione | Sintassi delle espressioni di query di Visual Basic | Ulteriori informazioni |
---|---|---|---|
Ignora | Ignora gli elementi fino a una posizione specificata in una sequenza. | Skip |
Enumerable.Skip Queryable.Skip |
SkipWhile | Ignora gli elementi in base a una funzione di predicato fino a quando un elemento non soddisfa la condizione. | Skip While |
Enumerable.SkipWhile Queryable.SkipWhile |
Take | Accetta gli elementi fino a una posizione specificata in una sequenza. | Take |
Enumerable.Take Queryable.Take |
TakeWhile | Accetta gli elementi in base a una funzione di predicato fino a quando un elemento non soddisfa la condizione. | Take While |
Enumerable.TakeWhile Queryable.TakeWhile |
Blocco | Suddivide gli elementi di una sequenza in blocchi di una dimensione massima specificata. | Enumerable.Chunk Queryable.Chunk |
Esempi di sintassi delle espressioni di query
Ignora
Nell'esempio di codice seguente viene utilizzata la clausola Skip
in Visual Basic per ignorare le prime quattro stringhe in una matrice di stringhe prima di restituire le stringhe rimanenti nella matrice.
Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}
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)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' keeps
' the
' doctor
' away
SkipWhile
Nell'esempio di codice seguente viene utilizzata la clausola Skip While
in Visual Basic per ignorare le stringhe in una matrice quando la prima lettera della stringa è "a". Vengono restituite le stringhe rimanenti della matrice.
Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}
Dim query = From word In words
Skip While word.Substring(0, 1) = "a"
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' day
' keeps
' the
' doctor
' away
Take
Nell'esempio di codice seguente viene utilizzata la clausola Take
in Visual Basic per restituire le prime due stringhe in una matrice di stringhe.
Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}
Dim query = From word In words
Take 2
Dim sb As New System.Text.StringBuilder()
For Each str As String In query
sb.AppendLine(str)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' an
' apple
TakeWhile
Nell'esempio di codice seguente viene utilizzata la clausola Take While
in Visual Basic per restituire stringhe di una matrice quando la lunghezza della stringa è uguale o inferiore a cinque.
Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}
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)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' an
' apple
' a
' day
' keeps
' the
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per