zoukankan      html  css  js  c++  java
  • 将一个条件从else语句中拆分出来导致的bug

    将一个条件从else语句中拆分出来,拆成一个新的else if分支,不能忘记要把原来else中的代码逻辑复制一份过来。或者直接在原来的else中直接写条件判断,执行特定条件下的代码逻辑。

    方法run2和run3是对run1方法里else中b==1条件进行拆分,进行其它操作。使用run2形式不能忘记将原来else中的代码逻辑复制一份过来,推荐使用run3方式。

     1 package com.alphajuns.test;
     2 
     3 import java.util.Random;
     4 
     5 import org.junit.Test;
     6 
     7 public class DemoTest {
     8     
     9     @Test
    10     public void run1() {
    11         int a = 0;
    12         Random r = new Random();
    13         int b = r.nextInt(4);
    14         if (b == 0) {
    15             a = 0;
    16         } else {
    17             a = 1;
    18         }
    19         System.out.println("a的值:" + a);
    20         System.out.println("b的值:" + b);
    21     }
    22     
    23     @Test
    24     public void run2() {
    25         int a = 0;
    26         Random r = new Random();
    27         int b = r.nextInt(4);
    28         if (b == 0) {
    29             a = 0;
    30         } else if (b == 1) {
    31             a = 1;    // 将b==1条件从else中拆出来不能忘记原来else中对a赋值1的代码拿过来
    32             System.out.println("b的值为1是要执行的操作");
    33         } else {
    34             a = 1;
    35         }
    36         System.out.println("a的值:" + a);
    37         System.out.println("b的值:" + b);
    38     }
    39     
    40     @Test
    41     public void run3() {
    42         int a = 0;
    43         Random r = new Random();
    44         int b = r.nextInt(4);
    45         if (b == 0) {
    46             a = 0;
    47         } else {
    48             if (b == 1) {    // 在else内部写b==1条件下的操作
    49                 System.out.println("b的值为1是要执行的操作");
    50             }
    51             a = 1;
    52         }
    53         System.out.println("a的值:" + a);
    54         System.out.println("b的值:" + b);
    55     }
    56 
    57 }
  • 相关阅读:
    HDU_1016——素环问题DFS
    什么是REST?以及RESTful的实现
    WebApi系列~基于RESTful标准的Web Api
    理解RESTful架构
    国内技术管理人员批阅google的“春运交通图”项目
    项目质量量化考核建议
    设计模式在交易系统中的应用
    修改Chrome临时文件位置
    百度员工离职总结:如何做个好员工?
    Firebird数据库系统的开发团队
  • 原文地址:https://www.cnblogs.com/alphajuns/p/15164418.html
Copyright © 2011-2022 走看看