Skip While 句 (Visual Basic)Skip While Clause (Visual Basic)

指定された条件が true である限り、コレクションの要素をバイパスし、残りの要素を返します。Bypasses elements in a collection as long as a specified condition is true and then returns the remaining elements.


Skip While expression  


用語Term 定義Definition
expression 必須です。Required. 次の要素をテストするための条件を表す式。An expression that represents a condition to test elements for. 式は、Boolean 値または同等の機能 (Boolean として評価される Integer など) を返す必要があります。The expression must return a Boolean value or a functional equivalent, such as an Integer to be evaluated as a Boolean.


Skip While 句では、クエリ結果の先頭から、指定された expressionfalse が返されるまでの要素がバイパスされます。The Skip While clause bypasses elements from the beginning of a query result until the supplied expression returns false. expressionfalse が返されると、クエリが残りのすべての要素を返します。After expression returns false, the query returns all the remaining elements. 残りの結果に対して、expression は無視されます。The expression is ignored for the remaining results.

Skip While 句は、Where 句を使用して、特定の条件を満たしていないすべての要素をクエリから除外できるという点で、Where 句と異なります。The Skip While clause differs from the Where clause in that the Where clause can be used to exclude all elements from a query that do not meet a particular condition. Skip While 句では、初めて条件が満たされなくなったときまでの要素が除外されます。The Skip While clause excludes elements only until the first time that the condition is not satisfied. Skip While 句は、順序付けされたクエリ結果を操作する場合に最も役立ちます。The Skip While clause is most useful when you are working with an ordered query result.

Skip 句を使用して、クエリ結果の先頭から特定の数の結果をバイパスできます。You can bypass a specific number of results from the beginning of a query result by using the Skip clause.


次のコード例では、Skip While 句を使用して、米国の最初の顧客が見つかるまで結果をバイパスします。The following code example uses the Skip While clause to bypass results until the first customer from the United States is found.

Public Sub SkipWhileSample()
    Dim customers = GetCustomerList()

    ' Return customers starting from the first U.S. customer encountered.
    Dim customerList = From cust In customers
                       Order By cust.Country
                       Skip While IsInternationalCustomer(cust)

    For Each cust In customerList
        Console.WriteLine(cust.CompanyName & vbTab & cust.Country)
End Sub

Public Function IsInternationalCustomer(ByVal cust As Customer) As Boolean
    If cust.Country = "USA" Then Return False

    Return True
End Function

関連項目See also