Java面向对象
Java异常
Java数组
Java常用类
Java集合
Java IO流
Java线程
Java反射
Socket编程
Java注解开发
Java GoF设计模式
HashMap
Java内存模型
Java线性表

Java数组的静态初始化

package com.wkcto.chapter03.demo01;

import java.util.Arrays;
/**
 * 数组的静态初始化 
 * @author 蛙课网
 *
 */
public class Test02 {

	public static void main(String[] args) {
		//定义数组
		int [] data = new int[8];
		//给数组元素赋值
		data[2]	 = 666;
		//遍历数组的元素
		for(int i = 0 ;  i<data.length; i++){
			System.out.print( data[i] + "\t");
		}
		System.out.println( );
		/*
		 * 1) 创建了数组后, 系统会给数组进行默认的初始化
		 * 	整数数组,把所有元素默认初始化为0
		 * 	小数数组,把所有元素默认初始化为0.0
		 * 	字符数组,把所有元素默认初始化为码值为0的字符, '\u0000'
		 * 	布尔数组,把所有元素默认初始化为false
		 * 	引用数组,把所有元素默认初始化为null
		 */
		
		//2)在创建数组的同时,可以给数组的元素赋初值, 这叫数组的静态初始化
		//在数组静态初始化时, 不需要指定数组的长度, 数组的长度由初始化元素的个数决定
		int [] mydata = new int[]{3,6,9,8};
		System.out.println( mydata.length );  		//4
		//数组的静态初始化,可以简化为:
		int [] mydata2 = {1,4,7};
		for (int xx : mydata2) {
			System.out.print( xx + "\t");
		}
		System.out.println( );
		
		//3)数组名之间的相互赋值
		data = mydata; 		//把mydata的值赋值给data, mydata存储的是一个数组的引用, 现在mydata和data引用了同一个数组
		System.out.println( Arrays.toString(data )); 		//[3, 6, 9, 8]
		data[0] = 88;
		System.out.println( Arrays.toString(mydata));   	//[88, 6, 9, 8]
		
		//4) 给数组重新赋值
		data = new int[] {6,6,6}; 		//data指向 了新的数组
		System.out.println( Arrays.toString(data ));
//		data = {8,8,8}; 		//简化的静态初始化,仅用于数组的静态初始化,不能用于数组的赋值
				
	}

}