00:00
那接着的话呢,我们在讲的就叫异位数组啊,注意我刚才讲这个呢,大家先了解一下就行啊,这个不用你去花精力去看,然后上面这些呢,需要大家清楚啊,然后接下来呢,我们就开始讲叫一维数组,昨天呢我呃前一天呢,我们的中心呢,就是讲一维和二维数组,这呢我们一共是分成六个知识点展开来说的,所以关于一维二维的这六个知识点啊,大家呢得掌握。那尤其是一维啊,毕竟一维还是咱们开发中用的最多的啊,那二维的话呢,就相对来讲少一点啊,那另外呢,就是一维你都不清楚,你不可能二维就清楚了啊,就先基于一维啊,首先的话呢,提到一位数组的一个初始化,咱们考试也考了,直接呢,我就把这个正确的就拿过来了,看这呢是正确的情况。那这样子啊,嗯,咱们说呢,是不是还有一个稍微简单的一个写法,就是如果呢,你这个要是写成一行了啊,这个一行的话呢,其实可以把后边这个new in呢可以去掉啊也行。
01:03
那就这呢,也也是个对的啊,这样讲这也是个对的,嗯,另外呢,咱们说一下就是这个中号啊,你放在这个类型后边也行,放在这个变量后边也行。啊,我们如果看源码的话呢,源码都是放在这个类型的后边的,所以我写的时候,平常我们也都这样写。哎,或者换句话说呢,其实这个Java里边呢,主张的是这种写法啊,虽然他没有明确说他主张这种写法后边也能写呢,其实是为了维持跟C语言这样的一个特点啊,在C语言当中呢,我们是在这个变量后边呢,来写这个呃,数组的长度的啊,就是Java不是类C的嘛,所以它里边延续了一些C里边可以用的一项一一些写法啊,嗯,但是呢,我们也很少在变量后边去写,在Java里边呢,主要还是写在这个类型的后边啊,那你知道那样写也可以就行。然后错误的写法,那除了正确的就都是错误的啊,就跟这个是哪一个文人说过那句话呢,叫这个幸福的家庭是相似的啊,不幸呢,是各有各的不幸是吧,我觉得跟这挺适合的啊,幸福的家庭是相似的,就是正确的写法呢,就这么几种,除了不除了正确的就都是错误的啊,你怎么写它都错,那那好多种是吧,啊,就这意思啊。
02:22
嗯,下面呢,关于叫EV数组元素的一个引用,呃,这引用呢,就是咱们尤其是像这种像这种方式哈,这个你只是把这个数组搭建起来了,元素都没赋过值,那你一定得会给它,呃,一定得去给它赋值啊,这叫数组元素调用,咱们是通过这个角标的方式是吧。诶这样复制的啊,而且呢,角标呢,是从零开始的啊,到这个长度减易结束啊,这个大家都得清楚啊,诶CTRLC。嗯,CTRLV1下行,通过角标的方式来调用行,然后下一个的话呢,我们提到叫数组这个属性LA吧,哎,这个蓝色属性啊,呃,这个其实比较简单直接呢,我们去调一下就可以了。
03:14
哎,直接掉下就行啊,哎,这刚才咱们讲这个早上这五道问题的时候呢,是不是提到这个点啊,这个点的话呢,大家得记住它啊。那这儿我写成一个说明,嗯,说数组长度一旦初始化,呃不数组一旦初始化,它的长度就是确定的了,然后呢,长度一旦确定了,它就长度不可修改了,哎,这个点呢,需要大家理解啊,需要理解,然后下边的话呢,一为数组的变力,这个我们没有考这个,因为比较简单了,呃,必须呢,需要大家掌握的。哎,他的一个便利直接粘过来了,就。好,CTRLC一下,嗯,再下面呢,叫EV速度元素的默认初始化值,这个咱们考试呢也考了。
04:05
哎,就是这样的情况啊,CTRLC一下,诶这里边呢,要说的就是,嗯,咱们这个引用数据类型,嗯,咱们其实还没有系统的展开来说啊,像这个类类型呢,咱们其实还没有展开来说啊,就大家呢,先拿咱们这个string呢去作为一个参考就可以了,哎,String呢是一个类,那你就以它为代表,知道这个引用数据类型的默认值是一个no。啊就可以啊,然后下面呢,异位数组的内存解析,哎,咱们这边画了一个这个图啊,诶把这个图呢粘过来,哎这个大家呢下来呢,就是我们早上考的那道题,你要是画不好了,哎,你下来呢,一定要把这个咱们课件当中,除了我讲的这个之外呢,还放了几个图,哎,你都自己呢画一画啊这个这块画好了以后,我们下一章讲这个类和对象的时候呢,还会画,到那个时候的话呢,诶你会更容易上手啊,反正呢,咱们到时候也得画,呃,你提前呢就先掌握了是吧?然后在下边呢,讲到这个二位数组啊,二位数组首先这个问题很关键,大家如何去理解二位数组。
05:15
啊,咱们讲课的时候,其实呃说这个事情了哈,那我们是这样引进来的,首先说数组属于引用数据类型,哎,我们这个逻辑呢,还是很严密的啊,大家看数组呢,属于引用数据类型,然后呢,说数组的元素啊,也可以是引用数据类型。有这样的两个前提,然后呢,我们下边说那么一个一维。一个一维数组的元素啊,那如果啊,还是一个一维数组类型的。嗯啊,那么则哎此哎这个这个这样吧,如果一个一位数组A吧啊,它的元素呢,还是一个一位数组类型的,那么则此一维数组A啊,或者叫则此数组A吧,我们就称为对二维数组了,其实这呢也只是一个叫法啊。
06:22
其实呢话呢,你像你这怎么会,其实这句话有矛盾哈,什么叫矛盾呢?你前面说了它是一位数组,你后边又给它叫做二位数组了。其实这个二维这个事儿,其实是咱们起的啊,按说呢,没有所谓的二尾。能理解不,没有所谓的二维就都是一位是吧,对,只不过你这个元素恰好又是一个异位,那你是就是呗。你是一维,其实存的不不过也就是一个低脂呗,其实内存中我们看到的话,其实都是一维的,对吧,只是说呢,我们你的元素恰好也是一维,这时候我们把它叫成二维了而已啊,仅此仅此而已,哎,大家体会一下这样的一个概念啊,行,那既然我们把它叫成二维了,那就叫二维了啊,这个一说二维你就知道啊,它是一个一维,里边呢,元素还是一个一维啊,这就叫二维了。
07:11
行,那么下边的话呢,关于二维的一个初始化问题。诶,初始化这些,这是正确的写法啊,CTRLC下面呢,这个也是正确的。这样子啊。嗯,也是正确的,把这个我往后调一下啊,哎,下边呢,就提到说这个中括号你可以放到后边啊这这种啊这个的话呢,就是其实也是一个类型推断了,哎这样子啊行,然后下边呢,这个错误的方式,这个呢,除了正确的都是错的,错误的你看一眼就行,就就别老是自己咔咔的老是在这写错误的了啊嗯。然后下边说如何调用二维数字的元素,还是角标啊,只不过这时候呢,我们调用起来就看着好像复杂一些了,CTRLC就看你到底是想调的是谁。
08:09
嗯,把这个呢,我们称作二维的一个内层元素,这都叫内层的啊,这个都是内层的,你要是调它的这个所谓的外层元素。哎,这个时候你就A,嗯,A23这样就行是吧,哎,那问一下,那要像这道问题,我这个打印的话呢,是什么。它只有两种情况,要么是什么,要么是什么呀,对,你要么是no,要么是地址值达,这个我现在判断不出来,因为我上面的没有说明这个AR3没有说到底长啥样,对对吧,对,我得看上面这个才知道啊看上面那又看到这了,你要看到这以后知道它长这样了,那这个这个是什么。
09:00
想清楚A23啊。我我告诉你他长这样了,那这块是多少闹吧,对你这块不是没付吗?我这要附上呢,这这就地址值了。对吧,哎,这个清楚啊,这个我没有付,所以说的话呢,就是我我光看它我不知道,你得看看它到底它是怎么定义的啊才行。行,这是我们说的这个事儿,然后下边呢,关于叫二维数组的一个属性,那还是这个叫Les啊,还是这个Les啊,那这时候呢,又有一个点就是嗯,写这个lengths的话,你得知道它到底输出的是几啊,这是我们这个二维的啊,它的lengths呢,就是从外层来看有几个啊,这是它这个内层每一个元素有几个啊,这要注意啊。呃,遍历二维数组啊,那我们考试也考了,就得是两层for循环。
10:04
这样子啊。好CTRLS1下行,大家呢,其实是不是现在有这样的一个,你自己总结一下啊,我们一维数组便利用几层方一层放就可以二维呢,两层放,那相应的这个三维知道吧,三维不对,那就得三层呗。所以说呢,这个千刀for循环或者用外循环也一样啊,哎,这个循环的层数跟我们这个数组遍历的时候呢,数组的维数它一定是一一对应的啊,一一对应的还是咱们说那个就大家玩那个魔方一样,你魔方呢,其实不就可以看成是一个三维的一个数组吧,对你要便利这里边魔方的就是每一个小块都代表一个数的话,你要想便利完它,那就一定得用三维的啊,三层for循环才可以。嗯,然后下面呢,说二维数组元素的默认初始化值,这个咱们讲的也很清楚啊,那这里边儿呢,就说到这儿了。
11:07
呃,这个呢,就是解释这个事儿呢,稍微有点麻烦,但是呢,一旦你理解以后呢,这个事儿呢,还很清楚。啊,主要呢,就关系到关系到这个,就是有个叫外层的这个元素,还有这个内层的元素啊,那外层呢,就是我们所说这个AR,呃,像它这就叫外层了,哎外层的话呢,你来看它是一个引用类型的,因为它的元素还是数组了,哎引用类型的值就两种情况,我们考察那个五道题的时候,第五道题说过,引用类型的变量的存储的值就两种情况,要么呢是no,就没有负过值,要么呢,对,就是地质值,哎就这二选一。哎,这个结论呢,是自始至终都是对的啊,那我们再接着说内层元素,那就看你内层这个元素是什么类型啊,整形啊,负电型啊是吧?哎,这个跟咱们前面讲的那个意位呢,就一样了啊,其实就这么个事儿啊,就这个事儿啊,要么是地质值,要么就是no是吧,外层的啊。
12:13
那接下来呢,就关于二维的一个内存结构啊,咱们也画了一个图啊,这个的话呢,大家也是啊,下来不熟悉的呢,再画一画啊,再画一画啊行,这呢是咱们这个复习的这个内容啊,那就先这样。
我来说两句