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 DefinitionDefinition
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