00:00
接下来我们针对学习过的高阶函数的一些用法呢,做一些扩展的练习,这里有两道练习题。首先第一道题目是。需要定义一个匿名函数,然后把它作为值赋给一个变量,Fun啊,所以大家看到这其实就是要练习我们把函数作为值进行传递的这个用法了,而且要定义的是匿名函数,同时练习一下匿名函数的使用,那么这个函数呢?呃,大家看还稍微有点麻烦啊,它是有三个参数。参数的类型呢,分别是int string和char,然后当前返函数返回值的类型是一个布尔的类型,Booing类型,然后接下来的要求,我们最后得到的结果,测试的时候呢,调用这个fun的时候,传参传三个嘛,如果要是传入零空字符串,String传空字符串,然后差传零字符的时候,如果这个参数是这样的话,得到的返回值是false。其他的情况呢,返回值都是处,哎,这有点像什么呢?这就有点像我们定义了这三种类型对应的那个false的值,然后呢,对他们的值相当于取了一个,取了一个或逻辑或啊,那如果说他们都为false的时候,最后得到的是false,那如果是其他情况,只要有一个部位false,那就是返回处啊,所以是这样的一个需求,那整体来看的话,这个其实并不是特别的复杂,我们在代码里边做一个实现。
01:32
新建一个。SC的OBJECT08,我们现在是一个practice,是高阶函数的一些啊体的练习啊,我们这个就不再详细写了,好,首先是练习一。我们这里首先要把对应的这个f fun写出来,那后边应该是一个匿名函数拉达表达式了啊,匿名函数要直接赋值给fun,那后面这个匿名函数应该怎么写呢?首先它应该有三个参数,那这三个参数分别类型int string差啊,那所以这里边非常简单,我们就定义对应的三个变量不就完了吗?这个参数嘛,Int类型我们就叫I,然后string类型我们就叫S,二类型就叫C,接下来向右的箭头定义一个蓝的表达式,那在表达式里边我们要定义的这个处理,目前的这个函数应该怎么定义呢?最终我们应该是要返回一个布尔类型的变量,前面这个我们要改成钝角的逗号啊,这样的话前面就不会报错了,然后接下来这里的处理其实就是要返回一个true false的。
02:56
值,那这里边什么情况下返回false呢?哎,当然就是它等于零,它等于空字符串,它等于零字符的时候可以很简单,一个if符判断if I等于零,并且S等于。
03:14
字符串这里大家知道哎,我们应该用cos啊,在盖拉里边字符串的这个ES和等号是一样的啊,都是值的判断,所以我们这里边直接写等号是没有问题的,然后C。与零字符的话,那么这个时候我们直接返回。外边啊,这里边有一个括号回false else,如果不是的话,就直接返回数,所以这个表达式可以非常的简单,好,那接下来我们来测试一下了。要用一下fun里边我们要给的是零字符串,还有浮力,这个应该调用得到的是cos,那就对了啊,那另外的一些场景我们也可以简单的写出来,比方说这里改一个是一。
04:09
前面改一个是23,或者中间给一个哈,那大家知道大面的几种情况应该都输出的是处,最上面的应该是false,我们来测试一下。大家看到得到的结果完全符合预期啊,所以整体来讲这个练习还是非常简单的啊,关键就在于我们要讲清楚拉姆达表达式到底是怎么写的,参数有几个类型,是什么样的,里边的逻辑是怎么样写的,最后把它赋给fun变量就可以了。
我来说两句