java吧 关注:1,224,645贴子:12,681,055

一个for循环中的switch问题

只看楼主收藏回复

for(。。。){
switch(。。。){
如何在case a中跳出for循环??一般的break只能跳出switch啊。。。。
}
}


1楼2014-01-09 22:02回复
    for外层取名


    IP属地:浙江来自iPhone客户端2楼2014-01-09 22:12
    收起回复
      switch语句块前定义个boolean的标记吧,switch结束后判断一下。


      IP属地:广东来自Android客户端3楼2014-01-09 22:13
      收起回复
        用label。。。然后break或continue 标签名;。。。


        IP属地:美国来自Android客户端4楼2014-01-09 22:50
        收起回复
          for外标记,然后,break标记,这是最简单的,


          IP属地:北京来自Android青春福利版5楼2014-01-09 23:00
          收起回复
            用if写,就在写一个累,然后反复调用也好,


            IP属地:北京来自Android青春福利版6楼2014-01-09 23:01
            回复
              case中的语句能影响for条件。for(int i=0,i<5&&flag==1,i++){
              switch(i){
              case 1:a++;flag=0;break;
              }
              }
              跳出来了


              IP属地:安徽来自Android客户端7楼2014-01-10 02:08
              收起回复
                七楼正解


                IP属地:浙江来自Android客户端8楼2014-01-10 07:42
                回复
                  恰当的使用标签没有坏处的
                  forLoop:
                  for (;;){
                  switch ("a"){
                  case "a": break forLoop;
                  }
                  }
                  能够用流程控制解决的问题就不要用flag来解决


                  IP属地:广西9楼2014-01-10 20:25
                  收起回复
                    要不试试递归?


                    IP属地:广东来自Android客户端10楼2014-01-11 11:07
                    回复
                      如果要这样子。。那个switch 作用还不如用if...else if...else 这样的想跳出循环很简单。。要么就是在switch 中case 的break 前将for的条件满足。。也会跳出。。例如:int aa=1;
                      fro(int i=0 ;i<10;i++){ switch(aa){
                      case 1:
                      这里写你的操作; i=10; break;
                      case 2:.......break;
                      defual:......break;
                      }} >>>>>>此方法还没有用过,,呵呵 。。应该可以用的吧。。现写。。请勿喷。。。


                      IP属地:福建12楼2014-10-07 11:18
                      收起回复
                        就不应该用switch


                        IP属地:广东来自Android客户端13楼2014-10-07 11:52
                        收起回复
                          很少人会这样写吧。。如果真要那样。。for(;i<10;i++){
                          case 1:i=10;break;
                          }
                          这样也可以跳出来。。楼主不用太纠结这个东东的了。。


                          IP属地:福建14楼2014-11-14 22:40
                          收起回复
                            把switch抽象出来


                            IP属地:美国来自Android客户端15楼2014-11-15 02:00
                            收起回复