概念:数组是相同类型数据的有序集合
特点:1.相同类型。
2.有序:每个元素都有一个下标,从0开始
3.长度是确定的
应用:int[] arr = new int[length];
数组元素个数:arr.length 属性
根据索引取特定位置的元素
第一个位置:arr[0]
最后一个位置上的元素:arr[length-1]
基本数据类型:
整型:int long short byte默认值0
浮点型:float double 默认值0.0
boolean 默认值false
char类型:u000
引用数据类型:默认值统一为null
类、接口:
数组:
数组动态初始化
数组定义与为数组元素分配空间并赋值的操作分开进行
基本数据类型:
int a[] = null;
a = new int[3];
a[0] = 3;
a[2] = 4;
a[1] = 9;
引用数据类型:
Person[] p = null;
p = new Person[3];
p[0] = new Person(1,"zhang");
数组静态初始化
数组定义数组同时进行数组元素内容设定
类型[] 数组名 = {元素1,元素2,。。。。。}
public class ArrayDemo02 {
/*
随机产生1-100的五个数,存储到数组中,遍历输出每一个元素
存储到数组中:int[] arr = new int[5];
step1:随机产生1-100之间的五个数
随机使用Math.random() --->[0,1)取出的是0-1之间的小数
1-100:Math.random()*100+1
step2:5个随机数,写个循环:
for(int i=1;i<=5;i++){
int num = Math.random()*100+1;
arr[i-1] = num;
}
*/
public static void main(String[] args){
int[] arr = new int[5];
//循环给数组上每一位置的元素赋值
for(int i = 1; i<=5;i++){
int num = (int)(Math.random()*100+1);
arr[i-1]=num;
}
//遍历输出每一个数组元素:
for(int j = 0;j<=arr.length;j++){
System.out.println("num"+arr[j]);
}
}
}
public class TestDemo {
//一维数组
/*
概念:数组是相同类型数据的有序集合
特点:1.相同类型。
2.有序:每个元素都有一个下标,从0开始
3.长度是确定的
格式:动态数组 静态数组
动态数组:
动态的数组定义 格式1先声明再赋值:声明:数据类型[] 数据名;
给定数组赋值:数组名 = new 数据类型[数组的长度];
格式2;一步到位:数据类型[] 数组名 = new 数据类型[数组的长度]
数组使用前要初始化,要付一个值
引用数据类型:类 接口 数组,在没有初始化时都是null
*/
public static void main(String[] args){
int[] arrAges;//声明,arrAges是局部变量,全部在栈内存中,arrages分的类型取决于
arrAges = new int[3];//对数组赋值,看到new会在堆内存开辟空间,有内存地址,int类型默认值是0
System.out.println(arrAges);
arrAges[0] = 100;
arrAges[1] = 200;
arrAges[2] = 300;
System.out.println(arrAges[0]);//取出第一个元素
//数组长度:
int len = arrAges.length;
System.out.println(len);
//取出最后一个元素
System.out.println(arrAges[len-1]);
//遍历输出数组中的每一个元素
for(int i = 0;i<=arrAges.length-1;i++){
System.out.println("NUM="+arrAges[i]);
}
}
}
``