00:00
行吧,那咱们一个一个看吧,首先我们先看这个分支语句。或者叫选择语句if。啊来。选择语句啊,分支语句if。好了,先看这个啊,If,那么接下来咱们就好好的把if学一下啊,来把这个零六打开,点右键,我们新建一个文件,我们叫if test01。上语句了,各位啊,不是那些小东西了啊,Public class if test01啊,第一个测试程序public static VO主方法将加上去,然后接下来我们在这儿呢,先把if语句的一个什么呀,一个语法机制,先说一下各位啊,If语句的啊语法结构。啊,以及运行原理,我给大家说一下啊。
01:00
先说一下它的语法结构啊,If语句啊。嗯,是。分支语句。也可以叫做条件语句啊,叫做。条件语句条件啊,那么if语句的语法格式是第一种写法,有四种写法,各位啊,If然后呢是小括号,小括号开始,小括号结束,这个里边写什么呢?写布尔表达式。啊,然后大括弧开始。大括弧结束。啊,在这个地方。我们是加完语句就行了啊,以分号结束。我们这个大括号叫做一个分支。啊叫做叫做一个分支。这里的一个大括号。
02:00
叫做一个分支,所以它叫做分支语句。啊,它又叫什么呀,选择语句其实又叫条件语句,它为什么叫条件语句呢?因为if啊,翻译成如果啊if这个单词翻译为什么呢?哎,如果。啊,所以又叫做什么呢?条件语句。所以它这个语句啊,有多种啊叫法,有一种叫法叫选择,你多个分支选择嘛,是不是哎,多个分支你选这个分支,别的分支就不能做,摆在你面前是个三岔口,那你要走其中这个分支,那那两个分支就不能再执行了,就是这个意思啊,就这意思。那么由于有分支,所以叫分支语句。啊。由于有if的存在,所以呢,我们这里会进行条件的判断,如果这个条件成立的话,怎么怎么地啊,如果这个条件成立的话,我们就走这个分支。如果这个条件不成立呢,我们这个分支啊,就不执行啊,就这个意思。
03:04
啊,好了,那么这里呢,我来解释一下这个程序的执行原理啊。就是该机制的该语法的执行原理是什么呢?是if,如果啊,就是如果不玩表达式的结果是true。则执行大括号中的程序。啊,否则不执行啊,否则。否则大括号中代码不执行啊,这就是我们所说的第一种写法啊,第一种写法。再强调一下,这是一个分支,各位啊,这个分支由加Y语句构成,任何一个加Y语句都是以分号结尾的,然后这个位置有个不玩表达是这个位置你能写100吗?不行啊,不能不能写个100啊,你不能写,你写100是啥呀,这个地方它必须得是布尔类型啊,你比如说你说这个在这呢,有一个什么in的A啊,等于什么呀,等于这个呃100,然后呢,接下来呢,Int类型B呢,等于什么呀,等于说200是不是,然后八来个A呢,等于B这这个行吗。
04:13
这行不行啊,这肯定不行的啊,因为这这这不是双等号,这是单等号,单等号是赋值运算,赋值运算是说把B给了谁,给了A。啊,B里边这个值一二百复制一份给了谁啊,给了A,那你这个赋值运算,运算完之后,你整体它是一个true和false的值吗?不是啊,这个位置必须是一个true或者false的结果才行,你这个位置必须得是个条件,你不能乱写,你说A要等于等于B,那这可以。A等于100对吧,那B呢,等于200 a等于等于B。这不错了吗?所以才是false,如果这个是false大框里面代码就不执行了,那如果说你A这篇呢,你写一个A闪小于什么呀B对不对?哎,那你这个是真呀,啊没有任何问题,那你如果这个为真的话,那你大管理代码就执行了呗,所以大家一定要记住啊,这里代码不是随便写的啊,必须是不玩类型啊,我再三强调,有同学吧,直接把A干过来是吧,A放到这来。
05:23
哎,编译半天编译不过去咋回事?你不懂语法呀,你不按套路出牌呀,这个位置得是不玩类型啊,你能这么干吗?所以这一块你要注意,你必须保证它是true或者是false,你不能随便写啊,不能随便,这叫不而表达式啊,不尔如果的意思啊,如果这个地方是真,就执行大括号里边的代码,如果这个地方是假,大括号里边代码就不执行,这就是意思语句的一个执行原理啊,那么它有没有第二种写法呢?第二种写法是什么呢?是这样的,呃,If,小括弧还是一个不玩表达式啊,然后接下来大块开始,大块结束,这里放的是Java语句,然后接下来我们在这儿呢,加一个else else啊,大括弧开始打括号结束啊,大会大会结束这个地方写加va语句啊,那么这个执行原理是什么呢?哎,就是如果不R。
06:21
表达式的结果是处啊,则执行。这个这个这个啊,我们叫叫什么叫做分之一啊,这个地方呢,我们叫什么叫分之二啊,来写上叫做。分之二啊,如果不表达结果是,则行分2/1不执行。啊,如果不玩,表达式的结果是false。如果这个是处,就执行这个分支,这个分支不执行。
07:00
如果这是false,那这个分之一不执行,分之二执行。啊,分之一。不执行,执行分之二。以上的这个语句,我们可以保证一定会有一个分执行以上的啊,这个语句可以保证。一支。一定会有一个分执行啊,这是第二种写法,第一种写法是直接就是if这个分支,有可能不执行,有可能执行,那要看你这个条件啊,你这个条件是真的还是假,如果是真的就执行,如果是假的这个就代码这个这个大块代码就不执行了啊,但是第二种写法呢,If和else呢,哎,Else代表什么意思啊,L是。其他啊,表示其他啊,如果这个条件成立就执行,那如果这个条件不成立呢,那就是else else,哎就是走这个分支,这个分支。
08:00
这个可以保证,要么这个执行,要么这个执行肯定会有一个啊,肯定会有一个这个100%可以保证,肯定会有一个分支执行,但这个没有办法保证啊来,那么接下来我在这里啊,还有一个结论,我需要给大家还有一个非常非常重要的语法需要给大家交代一下啊。需要注意一下啊,所有的我别写到这儿了,所有的if语句啊,所有的if语句只要有一个分支执行,整个if语句结束。不可能同时两个分支执行啊,不存在这种情况。不存在这种情况,各位啊,我再三强调啊,注意注意什么呢?就是说呀,对于if语句来说。只能在在任何情况下啊,只能有一个分支执行。不可能,不可能存在。啊。大于一个分支执行或者不可能存在两个。
09:08
或者更多个分支。执行。If语句,哎呀卡了,If语中,语句中只要有一个分支执行了,整个if语句就结束了,这一点是非常非常重要的一个内容啊,非常非常重要的一个内容。嗯。啊,这是第一点。那么这块呢,有同学就开始跟我较真儿了,说老师啊,我怎么就感觉你这个说的不太对呢?你比如说我写一个if,完事之后呢,这写个完事之后呢,这个if里边我又套了一个if,那同学我要跟大家说一下啊,像这种情况就属于IF1句嵌套了。
10:00
那你if语句嵌套这一块呢,这就相当于是两个if了啊,外边这是个大的if语句,里边你嵌套的这是另外的if语句,这两个if语句相对来说是独立的。相对来说是独立的,各位啊,也就是说你说有这个分支大括号执行了,完事之后呢,这个分支执行呢,这里边儿的分支也执行了,老师你看你的这句话错了吧。啊,你不是说有一个分支执行程序就结束了吗。我这怎么这个分支执行了,完了这个分支执行之后,这个里边分支也执行,我执行两个分支啊,我说的不是这个意思,各位啊,我说的不是我说呀,我说的是不是这我说的针对于某一个if语句来说。对于if语句来说啊,在任何情况下只能有一个分身执行,不可能存在两个或者是更多个分身执行啊,If语句只要有一个分身执行,整个if语句就结束了。这是对于什么呀,一个义。一个完整的啊,一个完整的if语句来说的啊,你说嵌套这种情况同样。
11:07
哎。它是两个。和我说的这种情况就不一样了啊,就不一样了,那如果你把这个删掉的话,就剩这个。哎,那没问题啊,只要有一个分支执行,那整个一一就结束了,不可能说你这个分支执行,这个分支还执行,那不可能啊,行了解一下啊,了解一下,这是第二种写法,各位啊,那么还有没有第三种写法呢?第三种写法是这样的,各位看好了啊,If这里跟一个什么呀,不玩表达式,永远都是不尔表达式,大块开始,大块结束,然后I。圆圈这是直接了,有一个分支是吧,I if,哎,这里再跟一个什么呀,不表达式,然后呢,I if再加一个什么呀,叫做不玩表达式啊,然后再往下I if再加一个什么呀,哎,不玩表达式啊,你可以。
12:04
可以加啊,可以加是这样的一一个。语法结构啊,Java语句来把这个拿过来,然后呢,我们把这个贴过来,把这个贴过来,把这个咱们贴过来啊,是这样的一个过程,那么以上if语句的执行原理是什么?这个原理是。波尔表的是一啊二三。四啊,点点点省略号各位啊,先干什么呢?判断就是先判断,不玩表达式一。啊,如果不玩表达式一为处。为处啊,执行分之一,这是分之一啊分之一。则执行分之一个位。
13:02
啊,然后。If语句结束了。注意啊,它是先判断第一个不表示结果是true还是false,如果为true的话,八这个分支只要一执行整个IF1句八就结束了,没了啊,我刚才在下面已经给大家说过了,对于一个完整的if语句来说,只要有一个分支执行整个if语句结束,这这个您必须得记住啊,必须得记住好,这个呢,就是我所说的这个第三种的啊,来再看先判断比波尔表达式。一啊如果布尔表达式一啊为处的时候,则执行分之一。整个if结束,那么当什么呢?当布尔表达是一,结果是false,那么会继续判断布尔表达式二的结果。
14:03
如果不玩,表达式二的结果是true。啊,这个结果是,那这是分之二,假如说啊则行之二。啊,然后整个if就结束了啊,就结束了。整个if就结束了。那么。反过来各位,我问大家,如果他能执行到这个位置上。这是不是足以说明表达式一,表达式二和表达式三都是负三?因为我说过整个if语句啊,它只要有一个分支执行,整个就结束了,那如果你这个分支执行呢,那你整个就结束了,如果你这个分支执行呢,那你整个就结束了,对吧?哎,如果你这个分支执行呢,整个就结束了,那如果这个是false,这个是false,这个是false,这个是true。
15:03
哎,那这样是不是才有机会执行呢?这个分支上对吧,所以说大家注意啊,这个条件啊,是从上往下依次判断啊,从上往下依次判断,从上往下依次判断。只要有一个是处。应该不能不能说主要主要看什么呢?看第一个。发生在哪里?发生在哪个分支上?啊,就从上往下依次判断,主要看第一个处发生在哪个分支上。第一个处。对应的分支执行啊,第一个处对应的。分支执行,只要一个分支执行,整个if结束。啊,结束是这样的一个一个情况,各位啊,一个情况好了,这是我们所说的第三种写法啊。
我来说两句