//动态数组
class  state {
public static void main(String[] args) { //static:固态
int [] arr = new int [5];
//动态数组格式:data_type [] 数组名称 =new data_type[];最后一个[]代表了该数组的长度.
//System.out.println(arr[4]);
/*打印该数组的第四位索引值,数组的索引从0开始算起,01234,共五位数即等于了数组的长度-1.该数组由于没有赋值,因此该int类型的数组的初始值为0.
结果为:0
如果该数组的长度为5,但是我打印第五个索引值就会出现数组越界: java.lang.ArrayIndexOutOfBoundsException: 5
*/
/*为数值赋予值:
arr [0]=1;
arr [1]=2;
arr [2]=3;
arr [3]=1;
arr [4]=2;
System.out.println(arr[4]);
为数组赋值然后打印数组的第四个索引值:2
*/
/*利用for循环输出数组值:
arr [0]=1;
arr [1]=2;
arr [2]=3;
arr [3]=1;
arr [4]=2;
for (int i=0;i<arr.length;i++ ){ //这里的i<arr.length是指输入的i的值要小于数组arr的长度(length).
System.out.println(arr[i]);
//结果: 1
// 2
// 3
// 1
// 2
}*/
arr [0]=1;
arr [1]=2;
arr [2]=3;
arr [3]=1;
arr [4]=2;
printArray(arr);
}
/*public static void printArray(int []arr){ 该方法数据类型定义了为void,因此不需要返回.
for (int i=0;i<arr.length;i++ ){
System.out.println(arr[i]+".");
}
*/
//但是,如果我这个方法这样写:
public static int printArray(int []arr){ //该方法将void改为了int的话,就需要返回一个整数类型.
for (int i=0;i<arr.length;i++ ){
System.out.println(arr[i]+".");
}
return 20; //这个return的是一个整数类型,就是整数的数值,但是这个数值的length长度是5,如果返回的数值大于5,这个返回值就没有意义了.
}
}