前面咱们知道了Java中的数据类型能够分为两大类数组
一是:基本数据类型,二是:引用数据类型blog
引用数据类型又分为:类,接口和数组索引
这一次咱们的内容就是数组接口
咱们先了解一下为何要有数组这个东西内存
假如让你定义一百个int类型的变量,并给他们每一个都赋值虚拟机
我相信你必定会搞得心烦意乱,这样也使咱们代码太多的重复变量
好了,其实就是想骗大家用数组。循环
其实数组的的建立有不少种遍历
第一种:技巧
数据类型 [] 变量名 = new 数据类型 [参数]
参数:表示你想要这个数组的长度,必定不能为空也不能为0
参数不能过大,若是数组需求的内存超过了虚拟机的内存将会Bomm!
上手代码:
使用这种方法建立时,每一个索引的值都为默认值
这时咱们建立了一个数组,那么咱们该如何去使用他呢?
这时就是有一个概念叫作:下标 (我的喜欢叫索引)
索引有很重要的一点就是:索引是从0开始的,从0开始,从0开始
使用索引时不能超过数组的长度,不然抛出异常,程序中止(和蓝屏差很少)
上面说了每一个索引都为默认值,如今就给各个索引赋值吧
赋值?不就是等号吗?不不不,能够去参考一下前的赋值运算符文章
在这说一下数组越界的问题,其实有个简单的技巧
如数组长度为5,那么这个数组的最大索引就为4
最大索引长度就是数组长度减1的值,
缘由其实很简单:
数组长度从1开始,数组索引从0开始
因此最大索引就比长度少1
赋完值后咱们就要来使用值,固然是用索引了
若是是这样:
System.out.println(array[0]);
System.out.println(array[1]);
...
这确定是不行的,代码重复性过高了
咱们发现一个规律一直是索引在递增
利用这个规律,咱们写个循环,从0开始一直递增
循环确定须要一个循环条件,循环条件确定是和索引有关系的
索引有个要求:不能超出最大索引,求最大索引的方法在上面说了
咱们就差一个数组长度,使用语法:数组名.length 就能够获得长度
方法图:
这个方法还有一个响亮的名字:数组遍历
这里简要说明几个问题
1.为何i初始化为0?
由于索引是从0开始的
2.循环条件简单解释一下
索引小于等于最大索引(数组长度-1)
3."\t"表明什么
其中\是转义字符t 表示Tab,既每一次打印增长一个空格
运行结果:
8 45 36 56 16
到这时,咱们任然发现这个数组赋值比较麻烦
就可使用咱们数组建立的第二种方法:
数据类型 [] 变量名 = {值,值,值};
这个方法就能够初始化且赋值,多个值使用逗号隔开
第三种:
数据类型 [] 变量名 = new 数据类型 [] {值,值,值};
这种方法有点像一和二的结合体,虽然咱们历来没用过
这里有个要求就是两个[] 内不能有值
咱们应该要掌握这些东西:
数据的建立,使用,遍历