while visual for ejemplos ciclo vb.net loops

visual - VB.NET-¿Cómo pasar al siguiente elemento a For Each Loop?



for visual basic 6 (5)

Cuando probé Continue For it Failed, obtuve un error de compilación. Mientras hacía esto, descubrí ''Currículum'':

For Each I As Item In Items If I = x Then ''Move to next item Resume Next End If ''Do something Next

Nota: Estoy usando VBA aquí.

¿Existe una sentencia como Exit For , excepto que en lugar de salir del bucle, simplemente pasa al siguiente elemento?

Por ejemplo:

For Each I As Item In Items If I = x Then '' Move to next item End If '' Do something Next

Sé que podría simplemente agregar un Else a la declaración If para que se lea de la siguiente manera:

For Each I As Item In Items If I = x Then '' Move to next item Else '' Do something End If Next

Solo me pregunto si hay una forma de pasar al siguiente elemento de la lista de Items . Estoy seguro de que la mayoría se preguntará por qué no solo usa la declaración Else , sino que al envolver el código "Do Something" parece ser menos legible. Especialmente cuando hay mucho más código.


Qué pasa:

If Not I = x Then '' Do something '' End If '' Move to next item ''


Usaría la declaración Continue lugar:

For Each I As Item In Items If I = x Then Continue For End If '' Do something Next

Tenga en cuenta que esto es ligeramente diferente a mover el iterador en sí mismo, cualquier cosa antes de que el If se ejecute de nuevo. Usualmente esto es lo que quieres, pero si no, tendrás que usar GetEnumerator() y luego MoveNext() / Current explícitamente en lugar de usar un bucle For Each .


Quiero dejar claro que el siguiente código no es una buena práctica. Puede usar la etiqueta GOTO:

For Each I As Item In Items If I = x Then ''Move to next item GOTO Label1 End If '' Do something Label1: Next


For Each I As Item In Items If I = x Then Continue For '' Do something Next