数组的概念和特点
数组的概念
什么是数组呢?数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。
数组是一种容器,可以同时存放多个数据值。
Java 语言中提供的数组是用来存储固定大小的同类型元素。
数组的特点
- 数组是一种引用数据类型
- 数组当中的数据,类型全部统一
- 数组的长度在程序运行期间不可改变
数组的初始化
数组的初始化就是在内存中创建一个数组,并且向其中赋予一些默认值。
初始化数组主要有两种方式,分别是动态初始化和静态初始化
动态初始化(指定长度)
在创建数组时,直接给定数组长度。
格式:数组类型[] 数组名称 = new 数据类型[数组长度]
例如:
int[] arr1 = new int[30];
也可以写成:
int arr2[] = new int[30];
不过不提倡第二种写法。
静态初始化(指定内容)
在创建数组时,直接给定数组内容。
格式:数组类型[] 数组名称 = new 数据类型[]{元素1,元素2,......}
例如:
int[] arr3 = new int[]{1,2,3};
那这样的数组就没有直接指定长度了吗?不是的,这样静态创建数组其实也给出了数组的长度,也就是元素的个数-1.
省略的静态初始化
格式:数组类型[] 数组名称 = {元素1,元素2,......}
例如:
int[] arr4 = {1,2,3};
数组的访问
如果我们直接打印数组名称会出现什么结果呢?
int[] arr4 = {1,2,3};
System.out.println(arr3);
我们会发现出现了一个奇怪的值,并不是我们想要的值。那么这个值是什么呢?其实这个值是数组对性的内存地址哈希值。那我们怎么获取数组的值呢?
通过索引(下标)来获取。
格式:数组名[索引]
System.out.println(arr3[0]);
System.out.println(arr3[1]);
数组的赋值
使用动态初始化数组时,数组中的元素会拥有一个默认值。
如果是整数类型,默认值为0;
如果是浮点数类型,默认值是0.0;
如果是字符类型,默认值是“\u0000”(不可见字符)
如果是布尔类型,默认值是false
如果是引用类型,默认值是null
那么如何给数组赋值为我们需要的值呢?
格式:数组名[下标] = 需要的值
例如:arr[0] = 5;
需要注意的是:静态初始化数组时,数组也会有默认值,只不过系统自动把默认值修改为大括号里面的值。
以上就是java数组的一些入门知识及注意事项,如有错误,欢迎大家留言指正。