Java基礎筆記-第十六記



java反射四
數組反射的應用 
import java.lang.reflect.Array;

public class Demo4 {

	//數組的反射
	public static void main(String[] args) {
		//1、具有相同維數和元素類型的數組屬於同一個類型
		//2、代表數組的Class實例對象的getSuperClass()方法返回
		//的父類爲Object類對應的Class
		//3、基本類型的一維數組可以被當作Object類型使用,不能當作
		//Object[] 類型使用;非基本類型的一維數組,即可以當做 Object
		//類型使用,又可以當做Object[]類型使用。
		//4、Arrays.asList()方法處理int[]和String[]時的差異
		//5、Array工具類用於完成對數組的反射操作
		
		printArray("abc".toCharArray());
	}
	
	public static void printArray(Object obj){
		
		Class cls = obj.getClass(); //獲取該類對象
		if(cls.isArray()){ //判斷該類對象是否是數組
			int len = Array.getLength(obj); //獲取長度
			for (int i = 0; i < len; i++) {  //遍歷
				//通過Array.get方法取出數組中的值
				System.out.println(Array.get(obj, i)); 
			}
		}
		else{
			System.out.println("該對象不是一個數組");
		}
	}
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章