00:00
里还有另外一个需求,我们前面讲的是在一个列表的基础上去追加一个元素,添加一个元素,那大家可能会想到,假如说我们当前有两个不同的列表,我能不能考虑把这两个列表直接合并在一起呢?诶,那这里边我们可以考虑一下这样的一个做法啊,比方说前面我们已经定义了例四六和例七,我能不能直接把例四六和例四七直接合并在一块呢?那我就这里直接定义一个LIST8,有同学可能想到了,哎,那之前我们这个定义的时候,既然可以直接当前的这一个双冒号方法啊,它可以直接创建出一个新的呃,List,而且我们这里边定义的时候,我们会看到啊,之前传的这个内容呢,好像它的类型也没有限制,那是不是我直接可以用这个双冒号连接两个列表呢?按照这种想法,我们可以直接尝试一下,那就是直接把六和LIST7这里做一个合并,然后我们把LIST8做一个打印输出。
01:15
看一看得到的是什么?大家看到了,这里边得到的是外边的这个LIST7,看起来还是一个一个的元素,但是LIST6呢,尽管它只有一个元素,这里边得到的还是一个list的类型。哎,这就是我们想到这个调用,它到底是怎么样调的,是基于LIST7这个列表去追加一个元素,那追加的元素是什么呢?追加的又是一个list,所以就得到了这样的一个东西啊,那如果说前面我们的这个LIST6不止是一个元素,比方说啊,它前面还有一个数,那我们自然能想到。得到的前面一个元素啊,不应该是一个两元素的list了,我们总是追加了一个list上来,这并不能起到我们想要的效果。
02:10
啊,那大家可能就想到了,那这个应该怎么样?呃,做到这样的一个效果呢,就是把这个list完整的所有元素都添加进来呢,啊,这里边有另外的一个方法,调用另一个例子的九,那就是直接三冒号,然后例六和例七做一个合并,这里的所谓三冒号啊,大家其实点进去的话,你就会发现啊,其实做的操作。其实就是把我们当前所有的这个元素都拆开,然后再合并放到一个list里边,我们看到这里的example啊,就是LIST12和LIST34,如果用三冒号连接的话,那其实相当于是LIST34掉了一个点三冒号LIST12啊就是得到了,相当于我们是做了一个这样的方法调用啊,做了一个两个list的合并,最后合在了一起。
03:10
啊,所以有时候把这种方法叫做扁平化啊,就是把整体拆分成个体,然后再合在一起,合成一个完整的list,就全部拆开了,元素都全部拆开了,所以我们可以看一下目前得到的LIST9跟之前的LIST8是否还是相同。运行一下。我们看到这就是真正我们想要的结果,按照顺序,LIST6的两个元素73 32在前边,LIST7的四个元素放在后边,哎,所以整体来看的话,这个定义的就非常的明确啊,一看就知道要做什么操作。那当然了,这里面还有另外一个操作,大家如果觉得这个三冒号特别的奇怪的话,那还有另外一个操作,就是阿加,我们可以直接在这儿LIST46加加LIST7,这个操作其实跟上面的单冒号其实是啊,看这里面其实调用的就是一个三冒号,对不对啊,那所以如果大家是喜欢用这种方法的话,这也可以作为另外一种考量。
04:22
打印LIST10,我们会看到结果跟前面的LIST90一模一样,都可以起到拆分,拆分之后,然后再合成一个完整的list,这样一个扁平化的过程。啊,这是我们讲的最后一部分,就是合并列表,那关于可变的列表,我们就讲解到这里。
我来说两句