00:00
量我们来看一下,那么模式中的变量是什么呢?就是在case后面这个关键字后,如果我们写的是一个具体的这个值变量,那么它在底层会将你这个CH。干什么呢?交给这个变量。OK,那就说如果我们将来有这样一个需求,你给我匹配这个值,想直接交给。Case代码,然后在我这个代码里面进行这个运算的话呢,我可以直接写一个变量,这个就叫模式中的变量。那么我直接上案例了,也非常的简单。好,我写一段代码。这叫脉尺中的变量。好,新建一个文件叫match。Va VAR就这么写。好,请看这段简简短的代码。啊,以后要看得懂啊,如果以后大家看到这句话,这里表示什么含义呢,注意听。啊,下面这句话的含义是。
01:02
下面这个case my char的含义。含义是什么呢?是这样子的啊,是呃,表示把这个my char。等于CH,就是相当于把这个CH付给了MYR,那这样子就意味着其实你一直是会被匹配到的。啊,就说你这个是不管怎么样,这个是一定会被匹配到的,相当于说无条件的匹配。无条件匹配好,那么我们来玩一把,看看这个输出什么,同学们来走一个好,这个就直接运行吧,我们看到现在我给了个大V,我给了一个大V,这个加是没有匹配上的,但是你这地方相当于把它给他了,那肯定必然就匹配上,所以说它直接输出OK myr myr就应该是大V,下面这个肯定不会输出好,各位同学请看执行的效果。好,这样一执行过后呢,我们发现这输出的结果就是OK,大V他永远会匹配上这位老师,我写别的呢,那肯定一个都行,你写U也是一样。
02:02
啊,你写U,他也会去执行这段代码。OK,那讲到这呢,我就顺带再说一下这个模式匹配返回的值啊,那如果我这样写讲到这呢,我顺带讲一下模式匹配可以返回值。是一个什么呢?是一个表达式。他在MYSC里面,它是个表达式,因此可以有返回值,因此可以可以有返回值。那么这个返回值怎么接接收呢?同学们请看,假如我这样写。大家看这段代码,那然后呢,我这样写va等于。这样子他会干什么呢?他会把你匹配到的,就是你最后匹配到哪个地方,这个后面就是你这个匹配到的后面这个代码块的这个最后那句话作为返回值返回。OK,那么给大家演示一个效果啊。比如说我现在把这个改成一个这样的东西,我就写正规的写法。
03:05
好正规写法,那么这呢,我写一个什么呢?我写一个这样的东西,就是CH,我加上一个。啊,我拼接一个字串哈。哦,就简单洗这么一管。那么如果这样写的话呢,就说如果我传进来是一个加号,它匹配到这,匹配到这个返回结果是CH加号返回给宇宙。今后这种用法用的是比较多的,就是我们在模式匹配的时候呢,我们经常会使用到这种效果,就是我们传了一个东西进行匹配,到匹配过做做了一个预算,直接把结果返回给别人。这个在Java里面是没有的,在这里面它这个效果其实用的是非常非常巧妙的,这种写法将来会多简单呢?假如我们匹配的是一个圆组,你给我一个圆组,后面我直接把这个圆组调一个位,直接用行返回了啊,那个应用就非常的广泛,好,我们来先看这个机制能不能跑起来。
04:00
Res。诶,各位同学,那么这边写一个RH,我等于我们看现在返回是什么东西,那为了好看呢,我把这个CH做一个小小改变。啊呃,CH,那我改一个一吧,因为我不想跟上面混在一起,我就新建一个一,比如我就写这个家。好,这样子呢,加匹配上过后就加等于哈,最后返回结应该是result等于加哈啊或者或者写一个就那样啊,大家看一下运行效果就可以了。啊OK好,当我们运行完过后,我们发现的确反馈是加hello好,这这种这种语言的特性会会被帮我们解决很多,就是用起来就特别简单。这这种用法在我们后面是大量使用的。好,同学们,那么我就就讲了这么两点啊,一个是呃,模式中的变量给他,第二个呢,讲了一个match是一个表达式,因此可以用返回值,返回值是谁呢?就是你匹配到的那个case后面的语句代码框里面最后一句啊,默认就这样子,你也不用写return。
05:11
不用写回程,就是返回值是,诶返回值返回值是什么呢?返回值就是匹配到的,匹配到的那个代码块,代码块的最后最后一句话。一句啊,一句话。最后一一句啊,最后一句话的这个知,当然如果你是呃print的话,那就是空了,好同学们,关于我们这说的这个模式中的变量呢,老师就给大家啊做一个讲解就到这就可以了啊,后面呢,综合运用的时候还会看到它的影子。现在还在打基础,就是关于模式的这些点,先给他突破。好,这个地方我做了一个简单的基本介绍,对吧,我又写了一个应用案例,然后呢,我把这个应用案例直接给同学们板书到这里。
06:08
啊,反输到这里插入进去。好,那么关于模式中的变量呢,我们就先讲到这里。
我来说两句