00:00
行,那么刚才呢,我们指出来这个通背符啊,这种格式呢,是作为他们二者的一个公共福类了,哎,那么解决了我们刚才提到了一些这个困惑的问题,OK,那么在这个之后呢,我们再提到诶关于这个,诶以它为例啊,这个list的一个操作的情况,操作什么意思呢?诶我们再下边呢,去体会一下这个list啊,我们上边呢,是拿这个LIST1也好,LIST2也好,是可以给他付的,那么我们先来说一个事吧,比如说我现在啊,我这呢在新区造一个list里边呢,就是放的string,这个呢,我叫LIST3。哎,我呢不妨呢,就把这个list呢,给它也都造出来了,哎这么着行,那么造出来以后,咱们这个LIST3当中,我通过直接LIST3可以去添加一些数据,这是OK的。这个没问题,那么如果呢?我们把这个LIST3付给了list。相当于我们的list,也就是说我们这个格式的也指向了它,那么我们现在要问的一个点,就是说我们这个list,我呢是不是也想考虑去做添加操作呀。
01:10
那么我们就看一下这个,我写个叫添加啊,添加我通过这个list去ADD,大家想想能不能添加。如果能添加,能加什么?目前看你要是艾,你看这个位置是不是就是个占位符的一个特点,它写的是个问号编译器的话呢,识别说你这是个问号问号,我我先这个老实一点写个DD吧看看。不让写。说呢,你这块需要个问号,你现在不能给我来个string。就愁死了,问号是什么呀?是吧?啊,编辑器也不知道你什么,反正那就是你,你只能往里填问号,那你写个问号,那那总不能写个问号吧,写个问号好歹也是个字符,那你得整个这个引号啥的是吧?这肯定也不行,那整个单引号呢,那就别想了,也不行啊,那这呢想说明是什么问题呢?哎,对,就是我们使用通位符的这样的一个结构呢,在咱们这个list,以它为例哈,咱们就不能向它内部添加数据了。
02:20
啊添加,哎这呢,就是对于咱们说这个list它来讲啊,哎就不能向哎其内部添加数据。啊,就不能加数据了,其实你想想也是哈,他要是能加string的话呢,呃,倒还马马虎虎,他要是你认为这个问号是一个任何类型都行,那你又又成了我写个123又进去了,那又麻烦了啊,所以这个问号呢,它也当然也没有给你看成就是string哈,因为你写的问号又不是string,哎,所以这块呢,它就限制你去往里添加数据啊,那么有没有什么例外呢?呃,其实也有一个例外。
03:01
啊,不能向其内部添加数据啊,除了谁呢?除了添加now之外,就是什么都不能加,但是呢,能唯一加的一个呢,就是个no。因为什么?嗯,因为咱们ADD的这块呢,对于我们list来讲,这里加的是对象,这个对象的话呢,不管是什么类型的对象,是不是总可以复制为一个no啊哎,这是所有这个类呃类类型的这个变量,它的一个默认值啊,那既然大家都可以加no,那你问号呢,是不知道加什么,不确定的,但是你总可以有个确定的,反正大家都可以识别no,所以是允许你加no,仅此而已,那只能做这么一个操作啊,那那就相当于其实也是不能啊,因为你没事往里边加no干什么对吧?啊没啥意义,其实啊,那这是添加,添加呢,你可以看作是一个叫写入的过程,就是把这个数据呢写到这个底层数组当中,那么对应的一个呢,叫读的过程啊,那添加呢,我这写成叫获取吧。
04:07
啊,相当于它呢,添加就是一个写入啊,那说白了就是我们不让你往里写,那获取呢,就是一个读的过程,那我们看看让不让读,读取什么意思呢?现在呢,我们LIST3里边我写了几个数,你把这个list呢给了list了,我这个list能不能去get这里边的这些数据。通过list本身是吧,咱们get的话呢,是不是可以放个index啊,我就比如说写个零,你说能不能把这个AA取出来呀。没报错警长。诶你看诶对,你看我这上面一一生成还出来这个结构了啊嗯,没报错啊,没报错的话呢,你看我们自动生成的这个类型,它为啥写的是object类型啊。对,我get的时候,你看我们刚才在这调的时候啊,我点我掉一个get,我get这个所引位置上的这个元素,Out的斜杠,这个元素的话呢,嗯,你写完以后说呢,得到的其实是返回的是一个问号,那我不管你这个问号是什么,但是总归呢,你是不是一定可以付给它的负类啊,顶级的副类不就是object了吗?就可以行啊,那其实呢,就是允许我们去读的啊,虽然呢,你是个object,那其实呢,在这里边本质就是AA啊执行。
05:33
呃,这个呢是嗯哪一行看看啊,这个101在这块。101,嗯,在啊这块还报了126。啊,咱们这个那会儿呢,是不是在这,我调这个便利了。我这个普的方法这不是在这儿吗?我调离便历的时候呢,这块就是报了个控制人是吧?呃,是因为咱们上面没有实例化啊,这是上面这个事儿,这个我们注释掉,呃,这个呢是编译通过的啊,诶然后我们重新呢,再跑下边这个程序。
06:05
诶,这样呢,我们就把这个A呢就获取到了,哎,说明呢,是可以允许读的啊,允许读取数据,那么这个读取的数据类型为object。这个呃,你可以理解成读取是问号,问号你不知道是什么类型,不确定啊,但是总归呢,你是object的一个子类,呃,子类或者你就是这个类的对象,是可以这样以多态的方式呢去复制的,OK,这呢我们就叫做读取行,那么关于这个通配符要是使用的话呢,它的写入和读取这个事儿,哎大家呢,要注意一下,比回头呢,你涉及到比如说你这里边有个list啊啊,这个list的话呢,我们方法的功能呢,是往里边写数据,写的话呢说诶他不让写,你得知道为什么不让啊,其实这呢,这不也看到了,我这不是可以读的吧,咱这不就相当于把这个例子中的数据不就读出来了吗?哎,对啊。
我来说两句