大家好,我又来写博客了~今天的内容还是接着上次的一样,讲分支结构,当然了,很多人说我这里面的博客只有Java,没有Android,别着急,很快就会有的。而且,可能是对于大家来说,提升阶段的Android博客。
四、if
说到if呢,很多人应该都知道意思是什么,就是如果的意思。那么我们先来看一段代码,之后再来品鉴一下这个if的真正含义。
int a = 10 ;
int b = 11 ;
if(a>b){
System.out.println("a大于b");
}
System.out.println("我说一句话,你听着。");
很简单的几行代码,前两行就不说了,就是定义了两个变量。那么从第三行开始,if这个关键字是我们从来都没有见过的。那么下面我们来看一下他的输出结果
我说一句话,你听着。
从输出结果上可以看到,加了if之后,"a大于b"这句话并没有输出。没错,if就是这样的用法,if后面的括号中,我们发现最终得到的结果是个布尔值的变量,那么当括号中的布尔值变量为真的情况下,会执行if后代码块中的代码,如果if括号中布尔值变量为假的话,则不会执行代码块中的代码。画个简单的流程图我们来看看。
很简单对吧。
五、if与else
如果有了,那么我们平常说话的时候,如果一般都跟否则连用,所以else也就诞生了。这个可以在if的基础上进行理解,我们做一个简单的程序,就很好理解了。
int a = 10 ;
int b = 11 ;
if(a>b){
System.out.println("a>b");
}else{
System.out.println("a<b");
}
System.out.println("我说一句话,你听着。");
那么这一段代码的输出结果是什么呢?猜也应该能猜出来。
a<b
我说一句话,你听着。
六、if与else if与else
还是一样的,看一行代码,我们来理解一下。场景也很好安排,就拿成绩来说。
// 班里a同学的考试成绩是95
// 判断一下是优秀,及格,不及格
int a = 95;
if(a>90){
System.out.println("a同学成绩为优秀");
}else if(a>60&&a<=90){
System.out.println("a同学成绩为及格");
}else{
System.out.println("a同学成绩为不及格");
}
输出的结果是
a同学成绩为优秀
通过这个例子,我们也能看出来,其实if也好else if或者else也好,都是一种判断,和生活中的例子特别像。通过上面代码的组合,我们发现,它可以使代码产生分流的作用。所以被称之为分支结构。
这个地方有些同学可能记不住,哪个后面有判断用的括号。那么告诉大家一个很好记录的方法,只要看见if,后面必定加上判断用的括号~
七、switch
switch也是一个分支结构,我们先来看看他在代码中的运用。
int a = 2;
switch(a){
case 0:
System.out.println("00000");
break;
case 1:
System.out.println("11111");
break;
case 2:
System.out.println("22222");
break;
default:
System.out.println("找不到你想要的结果");
break;
}
输出结果
22222
从上面的代码我们应该能看出来,switch是一种选择结构,就像我们平常考试的时候,会做选择题,当然是单选,那么最终的结果,必然从已知的ABCD这四个答案中做出选择。
这个地方我们要注意两个点
1.switch后面的括号中只能是整型或者char类型,当然也有特殊,java7以后,可以使用String类型。但是通常情况下,我们还是不太用String类型。所以这里大家了解就行。
2.break的作用:大家可以先尝试一下如果不加break会出现什么问题,之后你应该就能恍然大悟了。break的作用就是打断判断,如果没有break,switch判断会在选择后,继续往下运行,而不会因为case 1,case 2影响。
if与switch的区别是什么?
if更多的运用在范围选择上,还有boolean值变量上的比较多。
而switch就是选择。有几个固定选项的那种。
当然if是可以替代switch的,但是switch却替代不了if,所以在使用的时候,更多人喜欢用if,但是说句实话,如果你switch用的好的话,是会给你加分的哦~
if的图画的不好,请大家轻喷。后面其实也是可以加图的,但是,画图好累。还是请大家轻喷。