数组简单使用
数组可以用来存储多个类型一致的元素。(任意类型)
引用类型和基本类型变量创建的不同
- 基本类型变量声明出来不管是否赋值,都已经分配了内存。
- 引用变量类型的创建分为两步:声明和初始化
- 声明只在栈内分配内存(存储引用,或者说存储地址)
- 初始化在堆或者方法区分配内存(存储实际的数据)
- new出来的东西放在堆里面
- 程序运行常量放在方法区里面
- 关于栈
- 所有局部变量都存放在栈里面(在方法里面创建的变量都是局部变量,因为只在这个方法内有效)
一维数组的声明初始化和使用
声明
数组元素类型[] 数组名;
数组元素类型 数组名 [];
初始化
- 初始化的时间
- 可以在声明的时候直接初始化
- 也可以先声明后初始化
- 初始化的方法(初始化的时候必须确定数组的长度)
String[] arr = new String[3];
(动态初始化,指定长度)int [] arr = new int [] {2,1,6,4};
(静态初始化,指定内容)int [] arr = {3 ,4 ,68,23,12};
静态初始化,指定内容)
- 数据类型的默认值
- 整数类型(byte,short,int,long)的基本类型变量的默认值为0
- 单精度浮点型(float)的基本数据类型变量的默认值为0.0f
- 双精度浮点型(double)的基本类型变量的默认值为0.0d
- 字符型(char)的基本类型变量的默认值为“\u0000”
- 布尔型(boolean)的基本类型变量的默认值为false
- 引用类型的变量是默认值为null
- 数组引用类型的变量的默认值为null,除关键数组变量的实例后,如果没有显式的为每个元素赋值,Java就会把该数组的所有元素初始化为其相应类型的默认值。
- 初始化的时间
使用
通过索引访问数组里面的成员,索引是从0开始,
- 访问方式:
数组名[索引]
//可以访问值,也可以设置值
- 访问方式:
获取数组长度
- 数组名:length 这里的length是属性,不是方法,不需要加括号
- 注意事项
- 下标超出范围
- 空引用
填充数组
Arrays.fill(数组名,值);
//使用指定的值填充指定的数组
二维数组的声明,初始化和使用
声明
- 声明第一种方式:
数据类型[] [] 数组名
- 声明第二种方式:
数据类型 数组名 [] []
- 声明第一种方式:
初始化
初始化第一种方式:
数组名 = new 数据类型 [m] [n]
初始化第二种方式:
1
数组名 = {{234,54,75},{43,34,23},{2,3,5}};
可以把二维数组当作多个以为数组组成的一维数组,不如这里的就是一个长度为m的一维数组,这个数组里面每一个元素都是长度为n的一维数组。
+ 初始化第三种方式:`数据类型 [] [] 数组名 = new 数据类型[] [];`
m表示里面有多少个一维数组,但是没有给出这个一维数组的长度,这里的每一个一维数组的长度是可以不一样的。
使用
- 格式:
数组名 [索引] [索引];
- 通过
数组名 [索引] ;
得到的是一维数组,完全可以当作一维数组来使用
- 格式: