java基础笔记之数组(一维数组及数组的定义等)
结合代码与图将便于理解。
package test;
public class test1 {
/**
数组:一种引用类型的数据
特点:①指定数据类型 ②指定长度
声明:
数据类型 数组名[];
数据类型[] 数组名;
创建:
数组名[] = new 数据类型[长度N];
声明的同时创建:
数据类型 数组名[]= new 数据类型[长度N];
声明的同时完成初始化:
数据类型 数组名[]= new 数据类型[]{元素1,元素2,....};Java中数组的下标从零开始数
赋值:
数组名[索引] = 值;
取值:
数组名 [索引];
属性:
length获取元素个数防止数组下标越界。
遍历:
stack(栈 ):由系统分配,大小限制,先进后出
一般用于保存基本数据类型的局部变量与引用地址值
heap(堆)内存空间,当new时就会开辟,用于保存引用对象元素对象的值,特点:先进先出。
一般用于保存引用对象的属性值或数组的元素值
*/
public static void main(String[] args) {
//声明:
int[] intArray = null;//初始化才能使用
String stringArray[];
//System.out.println(intArray.toString());//开辟stack(栈)内存空间用于保存引用对象地址值,此时地址为null
//不能使用对象中的任何方法,因为此时的地址值为null,空指针异常对象为空不能调方法 java.lang.NullPointerException
//创建:
intArray = new int[5];//new一个长度为5的int类型,使用new关键字时开辟heap(堆)内存空间,用于保存引用对象的元素的值
System.out.println(intArray);//[I@70dea4e
//声明的同时创建:
int[] intArray2 = new int[5];//动态初始化:使用new创建数组后面,所有元素其实已经被初始化,元素都是默认值
//声明的同时完成初始化:
int [] intArray3=new int [] {1,2,3,4};
int[] intArray4= {1,2,3};//静态初始化:不使用new,而是在声明数组的同时就完成创建和初始化工作
//赋值
int[] intArray5 = new int[3];
intArray5[0]=1;
intArray5[1]=2;
intArray5[2]=3;
//取值
System.out.println(intArray5[1]);
//System.out.println(intArray5[3]);//数组下标越界异常 java.lang.ArrayIndexOutOfBoundsException: 3
//属性
System.out.println(intArray5.length);
//使用for循环遍历
for (int i = 0; i < intArray5.length; i++) {
int element= intArray5[i];
System.out.println("使用for循环遍历得到的元素:"+element);
}
//使用foreach遍历
for (int element2 : intArray5) {
System.out.println("使用forEach遍历得到的元素:"+element2);
}
}
}
二维数组在后一篇博客。