1 目录及资源索引
2 程序运行流程分类
- 顺序结构
- 分支结构(本节所学)
- 循环结构
3 分支结构流程图
参考所学课程PPT,流程图如下:
4 实际测试
4.1 单判断条件
测试代码如下:
public class TestIf
{
public static void main(String args[])
{
int i = 10;
if(i > 10)
{
System.out.println("i 的值大于 10!"); // 使用换行打印
}
}
}
测试结果如下,很显然可得,不会有任何打印。
4.2 多判断条件
测试代码如下:
public class TestIf
{
public static void main(String args[])
{
int i = 9;
if( (i > 5) && (i < 10) )
{
System.out.println("i 的值大于5,小于10"); // 使用换行打印
}
}
}
测试结果如下,如果同时满足if判断语句的条件,则可以正常打印。
4.3 小结
- 如果程序内有中文字符,则在编译的时候需要加上使用的字符集,不然会出错。
- 如果一个判断条件内,有多个判断语句,则最好把每个判断语句单独用括号隔起来,然后不同判断条件之间用空格隔开,这样看起来比较清晰,结构也很易懂。
- 我参考这个视频教程中,这个老师不喜欢写括号,可能他比较熟悉一些符号之间的优先级啥的,但是对于像我这种不是很熟悉的,就最好加个括号,不容易出错。
5 多分支结构
5.1 基本概念及结构图
多分支结构,即由 if…else… 或 if…else… 等组成,参考课件中的结构图如下:
这个结构跟C语言啥的基本类似,都是互通的。
5.2 实际测试1
if…else… 分支测试代码如下:
public class TestIf
{
public static void main(String args[])
{
int i = 11;
if( (i > 5) && (i < 10) )
{
System.out.println("i 的值大于5,小于10"); // 使用换行打印
}
else
{
System.out.println("i 的值大于5,小于10 是假的!!!"); // 使用换行打印
}
}
}
测试结果如下:
5.3 实际测试2
测试代码如下:
public class TestIf
{
public static void main(String args[])
{
int i = 1;
if(0 == i) // 如果i = 0
{
System.out.println("i = 0"); // 使用换行打印
}
else if(i < 0)
{
System.out.println("i < 0"); // 使用换行打印
}
else
{
System.out.println("i > 0"); // 使用换行打印
}
}
}
实际测试结果如下,如果不满足第一个 if 判断条件,继续往下判断,只要有一个条件满足,则后边的判断都不会执行;如果前边的判断都不满足,则全部都会进到 else 中。
6 Switch分支语句
测试代码如下:
public class TestIf
{
public static void main(String args[])
{
char c = 'a';
switch(c)
{
case 'b':
{
System.out.println('b'); // 使用换行打印
break;
}
case 'c':
{
System.out.println('c'); // 使用换行打印
break;
}
case 'a':
{
System.out.println('a'); // 使用换行打印
break;
}
default:
{
System.out.println("判断条件不存在"); // 使用换行打印
break;
}
}
}
}
测试结果如下:
需要注意的是,Switch…case… 语句,在写的时候,必须有 default ,且每个里边最好都有 break,这样做的好处是,能对不同的情况都有处理,在实际处理项目中,很有用。就像每一个 if 必须有一个对应的 else 一样,这样能对各种异常情况都有判断处理,在实际测试或者排查问题的时候,就很好用, 也很方便。
7 总结
- 不同的判断语句,最好都能用括号隔开,便于阅读,也不容易出错;
- 有多个判断语句时,可以采用多级 if 判断嵌套使用,每一级判断代表一类条件,这样便于阅读;
- 在写判断语句时,if 必须有对应的 else,switch 必须有对应的 default ,这样才能对不同情况都有处理,也可有效避免程序宕机。