package com.wkcto.chapter03.demo01;
import java.util.Arrays;
/**
* 數(shù)組的靜態(tài)初始化
* @author 蛙課網(wǎng)
*
*/
public class Test02 {
public static void main(String[] args) {
//定義數(shù)組
int [] data = new int[8];
//給數(shù)組元素賦值
data[2] = 666;
//遍歷數(shù)組的元素
for(int i = 0 ; i<data.length; i++){
System.out.print( data[i] + "\t");
}
System.out.println( );
/*
* 1) 創(chuàng)建了數(shù)組后, 系統(tǒng)會給數(shù)組進(jìn)行默認(rèn)的初始化
* 整數(shù)數(shù)組,把所有元素默認(rèn)初始化為0
* 小數(shù)數(shù)組,把所有元素默認(rèn)初始化為0.0
* 字符數(shù)組,把所有元素默認(rèn)初始化為碼值為0的字符, '\u0000'
* 布爾數(shù)組,把所有元素默認(rèn)初始化為false
* 引用數(shù)組,把所有元素默認(rèn)初始化為null
*/
//2)在創(chuàng)建數(shù)組的同時,可以給數(shù)組的元素賦初值, 這叫數(shù)組的靜態(tài)初始化
//在數(shù)組靜態(tài)初始化時, 不需要指定數(shù)組的長度, 數(shù)組的長度由初始化元素的個數(shù)決定
int [] mydata = new int[]{3,6,9,8};
System.out.println( mydata.length ); //4
//數(shù)組的靜態(tài)初始化,可以簡化為:
int [] mydata2 = {1,4,7};
for (int xx : mydata2) {
System.out.print( xx + "\t");
}
System.out.println( );
//3)數(shù)組名之間的相互賦值
data = mydata; //把mydata的值賦值給data, mydata存儲的是一個數(shù)組的引用, 現(xiàn)在mydata和data引用了同一個數(shù)組
System.out.println( Arrays.toString(data )); //[3, 6, 9, 8]
data[0] = 88;
System.out.println( Arrays.toString(mydata)); //[88, 6, 9, 8]
//4) 給數(shù)組重新賦值
data = new int[] {6,6,6}; //data指向 了新的數(shù)組
System.out.println( Arrays.toString(data ));
// data = {8,8,8}; //簡化的靜態(tài)初始化,僅用于數(shù)組的靜態(tài)初始化,不能用于數(shù)組的賦值
}
}