编程的智慧

来源:互联网 发布:淘宝丝袜女模特拍照 编辑:程序博客网 时间:2024/06/06 01:50

改写循环的办法有多种:

  1. 1.如果出现了continue,你往往只需要把continue的条件反向,就可以消除continue。
  • 2.如果出现了break,你往往可以把break的条件,合并到循环头部的终止条件里,从而去掉break。
  • 3.有时候你可以把break替换成return,从而去掉break。
  • 4.如果以上都失败了,你也许可以把循环里面复杂的部分提取出来,做成函数调用,之后continue或者break就可以去掉了。

  • 例程1:​

List<<spanse-mark="1">String> goodNames=new ArrayList<>();

for (String name: names){

  if(name.contains("bad"))

      continue

   }

  goodNames.add(name);

}​

可以改成:

List<String> goodNames=new ArrayList<>();

for (String name:names) 

    if (!name.contains("bad")) {

         goodNames.add(name); 

     }

 }

例程2:

while (condition1){ 

   ... 

    if(condition2) { 

     break

    }

}

可以改成

while (condition1&&!condition2) {...}

例程3:

public static void main(String[] args) {

      int sum= 0;

      for(int i = 1; i <= 10&& sum <= 20; i++){

           sum = sum+ i;

                   

       }

       System.out.print("当前的累加值为:" + sum);

}

​例程4:

public static void main(String[] args){

       int sum = 0; // 保存累加值

       for (int i = 1; i <= 10; i++){

           

             if ( i % 2 == 0) {

                      sum = sum + i;

              }

         }

        System.out.print("1到10之间的所有偶数的和为:" + sum);

}

0 0