00:00
有了这个基础之后呢,我们就往里面来看它的细节和注意事项,那老师呢,依次给大家走一走啊,第一个,如果所有的case都不匹配,执行case下划线,类似于加defpot讲过了。如果所有case都不匹配,你又没有写case下划线,则会抛出一个异常,Java里面呢,匹配不上他也不管了。对吧,Java里面如果匹配不上,它就自动退出,但是到了我们match里面呢,没有匹配到,它会抛出一个异常,我给大家演示一下,比如说我在这里什么都不写。对,什么都不写,那么我这里呢,故意写了一个特殊的字符,比如说井号,井号在这里一个都匹配不到,你又没有写默认匹配,那么我们的这个运行结果会怎样呢?会抛出一个异常,这个异常就是这个matchl。啊MY,这个大家要注意,也就是说你以后要养成一个习惯,只要是我们的match里面一定会至少有一个case下划线啊,这个大家要注意一下。
01:07
好的,这个呢,案例我就不说了,还有一个每个case语句不用break自动中断,第四一个可以在match中使用其他类型,而不仅仅是字符,也就是说它匹配的时候,这个类型呢,你想写什么?就可以写什么类型,非常的这个松散,那比如说同学们再看一个案例,我这里再加一个匹配,比如说我除了匹配这个呢,我还想匹配一个11,如果你是一,哎,我们也匹配我,我就说出一句话啊,比如说匹配到。匹配到这个一也可以,那你还可以写什么呢?周老师,我还想写匹配字符串也可以,比如说你写一个汤姆也没问题,它这个类型呢比较松散。啊,匹配汤姆啊,这个也是,这个还不行,看看啊,这个字符串在这地方它不支持啊,那么换一个别的啊,比如说换一个小数1.1啊匹配到这个。
02:05
1.1。好,那么字符串的匹配方式是另外一种方式,待会我们会说,那么给他改一下啊,比如说我这写个一,我们可以看到它会匹配到一,这句话就会输出。好,可以看到这个结果呢,啊,跟我们想的是一样的。好,所以说这个类型呢,它是可以混着使用的,第五一个。这个符号等价于Switch里面的这个冒号,因为以前我们写的case冒号嘛。啊,这个符号就箭头这个符号呢,呃,到下一个case作为一个整体执行,因此可以用大括号括起来,也可以不括,比如说举个例子。比如说举个例子,假如我在这个加号里面,我除了这句话,我还有好几句话要执行,那我肯定不能写在同一行了,比如我写了一个,又写了一句话,啊,Print OK不了哈,然后呢,Print。
03:00
比如说哈哈波浪号等等,你看这个地方呢,你如果匹配到加号,它会把这三句话做一个整体执行,而不是只执行一句话,那么我们来玩一把,比如说我把这个换成加号,那这个图这时候你会看到这两句话都会被输出执行。哎,请看效果,我们可以看到这边都输出了,这种写法呢,看起来比较怪,不利于阅读,所以说更多的程序员呢,他会这样写,他会把它包起来。这样包起来看起来呢,会稍微的更符合我们程序员的这种风格,我也建议大家以后如果有case多个,建议用大括号括起来,做成一个代码框。更利于我们的阅读,所以在这呢,我也给大家提了这么一个。一个特点,好,关于match的这个细节呢,我们就先说到这里啊,啊,其他的地方跟Switch都大同小异,好,我把这个呢给大家搬过来,这是细节问题。
04:02
好,给大家板书到我们的笔记中,第一个我讲了这里,诶讲这里第二个。啊,第三个。好第四一个匹配呢,可以是任意类型,好这边第五一个,第五一个好第六一个。好,那案例呢,这个其实大家看一下这个案例,我把这个案例也放到这边就可以了啊案例。好案例,案例呢,就是刚才这一小节,我粘过来就行了,就是刚才特特别改动的这一部分呢,我单独的给同学们拿过来就行,当时我们在这加了一点东西。就是可以匹配的类型呢,不仅仅是字符串A可以加新的类型,第二个呢,这个代码块这一块,诶,你可以多行用大括号括起来。好,这是我们的,呃,这个细节我们就先说到这里好。就是match的细节。
05:01
好。截取一段小。
我来说两句