00:00
我们先看一下这个Switch表达式的增强。我们扩展。这个思维。表达式啊。它主要体现在啊,主要体现在。两个方面。好吧,主要现在两个方面啊。第一个。第一个就是我们有这个什么呀,Kiss。L。是不是箭头。是用这个标签儿。是用这个标签,是不是使用这个标签就是它。不带有,不带有。不带有这个贯穿的,不带有贯穿。不带有贯穿功能。是不是?那么再一个就是什么呀,就是我们Switch。
01:07
Switch啊,Switch。他还先有一个,有一个有一个新增了一个。新增一个什么yell的语句。现在也压到雨去。一到雨去。主要就体现在这两个方面。那么我们在JDK12,在JDK13当中,它已经有了Switch的预览啊,已经有了Switch的预览是吧,在这个JDK14当中啊,在JDK14当中,哎,它作为一个什么正式的标准。来发布了。通过代码给大家演示一下啊,通过代码给大家演示一下。
02:03
T01SWITCH。我在这个地方先定一个枚举啊,定一个枚举,你比如说为。那么在这里边给他指定一组常量。Monday Tuesday Wednesday。Friday。Saturday Sunday是吧,定义一个枚举啊,定义一个枚举。第一,美女类型。嗯。然后呢,我们在这个地方定义一个变量。是吧?是吧,D等于。对点对点什么Monday。
03:02
是吧,哎。我们初始化一个枚举变量。那么我们早期的啊,Switch这么写啊Switch。我写一个贯穿,好吧,写个贯穿你,比如kiss Monday,冒号。是吧?Kiss。Tuesday冒号。Kiss。Wednesday冒号。是吧,那么在这个地方给他一个line。哎,说说什么呀。上半周。加上一个什么break。Kiss。Thursday。Kiss。
04:01
Friday。是吧,然后呢,输出一个什么线板轴。Kiss Saturday。Sunday。那这个地方输出一个周末。对吧。那么这是我们早期就是早期Switch,早期的Switch啊。或者说我们这个这么说这个case。L冒号。对不对,哎,这个标签。这个标识它具有具有什么呀,贯穿功能。具有贯穿功能,是不是具有贯穿功能啊。
05:06
那么我们保存一下。保险。Can。那么打开命令窗口。对吧。Java。T01点。Java运行一下。是不是啊,那你赋值money是不是就是上半周嘛,对不对,那你如果赋值别的,你复制money。你看。是不是从这。符合这个产量,因为你没有break,没有break就向下穿透嘛,穿透遇到了break退出。对吧,那我们现在啊,我们现在来使用这个新的标签。把这个注释掉。
06:05
The case l这个地方箭头。这个标签啊,这个标签是不是啊,它没有这个。贯穿功能好吧。没有这个贯穿功能。好吧。那么这个标签我们在用的时候啊,你可以这么写。啊,你可以这么写,就说我们这个case后面的常量啊,Case后面的常量可以。可以使用逗号来分割。就是kiss后面这么说吧,Kiss后面可以使用逗号。来分。多个产量。
07:03
那么上面这段代码,我们可以给它改成这个样子。这个地方。逗号。逗号就说K后面的常量啊,后面的常量是用逗号来分割加一个箭头。对吧,加一个箭头,那么加一个箭头之后,它不需要break啊,不需要break,因为你这个。标签啊,这个标签它没有这个贯穿功能。没有这个贯穿功能啊,你就可以这么写。
08:15
这么写。看吧,这么写啊,那么我们现在保存一下,现在保存一下,那么我们过来重新编译。是吧,重新运行结果依然对。是不是啊,结果依然,依然对。这是一种。是吧,就是K标签啊,使用箭头的话,使用箭头的话啊,它就没有穿透功能,那么K后面可以有多个常量,那么这多个产量我们使用逗号来分割。好吧,使用逗号来分割多个常量箭头。那么我们后面。
09:03
就是一个代码块呗,是不是就是一个代码块。好吧。那么这个地方还需要还需要。咱同学们注意一下什么,就说我们后面如果是有这个局部变量的话,这个局部变量它只。在当前,只在当前代码块儿当中有效。来,我把这个注释打开给你演示一下。我们在早期的版本当中,你比如说我现在在这个地方定个局部变量,S等于。空串,那么我们在这个地方再定一个S。等于D。我编一下。保存过来重新编译,重新编译之后这个地方报错了。他告诉你,哎,这个局部变量已经定义了。
10:03
好不好,也就是说我们在这一个。KL冒号这个标签中啊。这个标签中啊,这个局部变量它是在在什么,整个Switch。Switch中有效。好不好,那么你这个地方哎,就会显示。重复定义。好吧,再定的话就重复定义了啊。好吧。那么我们在这儿呢?你比如说我现在在这个地方定义一个string。S等于。等于ABC。那我们在这个地方再定一个string s等于什么DF?在这个地方定一个什么string s等于,呵呵。
11:01
好吧,哎,我们变异以后啊,他没有。语法错。能跑出这么多错误,跑出这么错误是啥呢?是我这个地方。他告诉你,告诉你需要一个什么呀,是不是需要一个大括弧啊。是不是需要一个大括弧啊,需要一个大括弧啊。诶。诶,需要一个大括弧,好吧,需要一个大括弧啊,来保存一下啊,CTRLS保存一下过来重新编译。是不是,然后呢运行。这么一个东西啊,就是你这个代码块啊,代码块是不是,哎可以。
12:03
没有穿透啊,没有穿透,那么我们这个局部变量,它只在当前这个代码块当中有效。只在当前代板块当中有效。好了,这是没有没有。穿透或者没有贯穿功能的这个箭头标签,好吧。那么当然之前的冒号它也可以啊,冒号也可以。
我来说两句