Java 中的数组:
相同数据类型的元素组成的集合
在内存中就一组连续的数据
数组:是全部元素的集合,是内存中的连续存储单元
数组元素:是数组中每个具体的元素
数组变量:似乎标识数据的变量名 是引用类型变量
int[] array =new int[5]; ==> 在java 中创建一个数组
array 是数组变量
new int[3]是数组
array[0] 是数组元素
声明 数组变量
创建数组(内存分配)
访问数组(读写)
创建数组:三种方式
new 运算符 用于分配数组内存空间,按照数组长度连续分配空间 数组的元素会 自动初始化 默认值为 0
new 运算 返回值是数组的内存首地址,赋值给数组变量
数组变量 = new 类型[长度];
array = new int[5];
package day07; public class Demo01 { public static void main(String[] args) { //类型[] 变量名; 类型可以是基本类型/引用类型 int[] array; //声明数组变量 String[] string; //声明后 要初始化 array = null; // 赋空值 //System.out.println(array[0]);//没有编译错误,有运行异常 这个就是空指针异常:变量的值是null 在访问成员的时候发生:属性,方法,元素都是成员 array = new int[2]; System.out.println(array);//数组在内存首地址 System.out.println(array[0]);//0 自动初始化 默认为 0 } }
直接给数组元素进行初始化
数组变量 = new 类型[]{数组元素},不需要长度
array = new int[]{1,2,3};
简化版;数组静态初始化,只能用于同时声明数组变量直接初始化
int[] array = {1,2,3};
区别:
只知道长度不知道元素,或者长度很大 就采用 new int[长度]
已知元素,元素的数量不多,使用 new int[]{数组元素}
在声明变量时候初始化 使用 int[] array = {数组元素}
int long double char,string boolean 引用
0 0.0 \u0000(字符串结束符号) flase null
package day07; public class Demo02 { public static void main(String[] args) { byte[] b = new byte[1024]; System.out.println(b[0]); short[] sh =new short[512]; System.out.println(sh[1]); int[] i = new int[256]; System.out.println(i[1]); long[] l = new long[128]; System.out.println(l[3]); char[] c = new char[10]; System.out.println((int)c[0]); String[] s = new String[3]; System.out.println(s[0]); boolean[] boo = new boolean [2]; System.out.println(boo[0]); } }
数组元素的访问
使用[]下标运算,来读写数组元素
用 .length 属性获取数组长度 数组的下标的范围是0~length-1,超范围访问,有运行异常
array[0]++; 写数组元素
数组的迭代 就是 数组的遍历
package day07; public class Demo03 { public static void main(String[] args) { int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; for (int i = 0; i < array.length; i++) { System.out.println(array[i]); } } }
本文出自 “浪漫的偷笑” 博客,请务必保留此出处http://lmdtx.blog.51cto.com/6942028/1699267
原文地址:http://lmdtx.blog.51cto.com/6942028/1699267