编程的智慧

改写循环的办法有多种:

  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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值