我尝试使用退出,但它跳或破坏只有一个for循环。
我该如何做到以下:
for each item in itemList for each item1 in itemList1 if item1.text = "bla bla bla" then exit for end if end forend for不幸的是,没有退出两个级别的for语句,但有几个解决方法来做你想要的:
> Goto。一般来说,使用goto是considered to be bad practice(正确地是这样),但是使用goto仅用于结构化控制语句的正向跳转通常被认为是OK,特别是如果替代是要有更复杂的代码。
For Each item In itemList For Each item1 In itemList1 If item1.Text = "bla bla bla" Then Goto end_of_for End If NextNextend_of_for:
>虚拟外块
Do For Each item In itemList For Each item1 In itemList1 If item1.Text = "bla bla bla" Then Exit Do End If Next NextLoop While False
要么
Try For Each item In itemList For Each item1 In itemList1 If item1 = "bla bla bla" Then Exit Try End If Next NextFinallyEnd Try
>分离函数:将循环放在单独的函数中,可以使用return退出。这可能需要你传递很多参数,这取决于你在循环中使用了多少个局部变量。另一种方法是将块放入多行lambda,因为这将创建一个局部变量的闭包。
>布尔变量:这可能会使您的代码可读性略差,具体取决于您有多少层嵌套循环:
Dim done = FalseFor Each item In itemList For Each item1 In itemList1 If item1.Text = "bla bla bla" Then done = True Exit For End If Next If done Then Exit ForNext总结
以上是内存溢出为你收集整理的在vb.net中打破/退出嵌套全部内容,希望文章能够帮你解决在vb.net中打破/退出嵌套所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)