00:00
好,那除了这个streampi里边新增加的这四个方法之外呢,还在另外一个结构当中新增加了一个方法,就是我们这里提到叫optional optional呢是我们JDK8当中新增加的一个类啊,这个类里边呢,就是方便我们来处理这个控制人异常的问题啊,嗯,它里边新增加了一个stream的方法。啊,新增加个spring方法,那这呢是我们列举的这样的一个例子啊,这个例子呢,其实也比较简单啊,那我们这块呢,直接来给大家写个例子,新建一个类。哎,Optional的一个测试。好这就可以了啊呃,然后这个时候呢,我们首先呢,比如说提供一个list。A released。好,然后呢,在我们这个例子当中,咱们去添加相应的几个元素。
01:05
呃,Jerry来一个team,好,这完了以后的话呢,我们通过这个optional啊,它第二它有一个方法呢,叫of novel啊of novel啊,这个时候呢,我们去点一下,将我们这个例子呢添加到当中啊,这个时候呢,咱们就得到了一个optional。哎,得到一个optional,然后这个optional的话呢。诶,咱们可以调用它现在新增加的一个方法,就是将我们这个option当中所包含的数据呢,转化为一个stream。啊,转化为一个stream。哎,这就行了,那得到这个stream以后,我们可以呢,给这个stream做一个for each啊system。Out。哎,普拉。来,我们执行一下。哎,这就可以了啊,这呢是我们得到这个当中的数据,相当于呢,我们就可以通过optional呢,呃,将它的这个元素转化成我们对应的这个stream这个结构了。
02:09
啊,那这时候呢,我们这个,呃,Stream的话呢,如果我们想看一下它的这个LAS,诶来看一下啊。哎,stream.count点,然后呢,做一个set out。哎,这时候呢,报了一个异常说stream,呃,已经被关闭了啊,这个呢是因为这的原因,咱们这呢就把它注释掉了,哎,在我们这个stream这块呢,涉及到了一旦呢,你给它调用一下这个终止函数了,就不能再去调这个for each了,因为它已经终止了啊,哎,再来执行。好,这时候呢,是一啊是一,诶这明明我们刚才看到了,说里边应该有三个元素啊啊,因为这时候呢,我们把这个整个例子呢,充当成了一个结构。啊,是这个原因造成的,那如果大家希望说我想看到这里边儿的应该是三个元素,那怎么办呢?呃,在我们这个STEM这个方法的后面,咱们可以再去调用它的一个叫做flat map。
03:09
啊叫做Fla map,然后呢,我们可以给它呢做一个转化,这个X呢,其实代表的就是我们stream中的元素,就是咱们这个list啊,然后呢,我调这个list,点它呢再去取一下。啊,再去取下这个STEM就可以了,那这时候我们返回的这个值呢,就不是他了。哎,那这时候完了以后,我们再alt enter一下。嗯,Stream啊,这个这个也不要了是吧。Enter。嗯,生成一个变量,哎,这个呢,我们还叫这个STEM,然后下边呢,再去获取它的count,哎,大家看结果。哎,此时呢,我们这个元素的个数就是三啊,那你要么呢,就是把它注释掉,把这个呢,再打开看一下它当中具体的这些元素。那就是这三个。
04:01
好,这呢就有一个比较小的点啊,就是我们刚才提到的说这个optional。啊,内容啊提供了。啊,转换为。哎,转换为我们这个stream的这个方法。哎,这个方法呢,就是STEM方法。啊,那相当于呢,咱们刚才呢,也复习了一下,说STEM呢有呃,原来说有四种方法来获取他的一个实力,那现在呢,其实又多了一种啊,算是五种了。像这是我们说的这样的一个新特性。
我来说两句