将一个条件从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 }
复制代码

 

posted @   AlphaJunS  阅读(75)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2019-08-19 POI XSSF与HSSF区别
2019-08-19 Apache POI读取Excel
点击右上角即可分享
微信分享提示