看看,我似乎無法找到與此相同的問題。我的問題是關於Java中的int[]
。是int []一個對象嗎?
當你創建一個int[]
,使用此語法:
int[] x = new int[5];
這是int[]
一部分也讓我覺得這是一個Object
的方法,但它並沒有遵循Java命名約定類,這讓我感到困惑。它也是一個原始類型的數組,可以像原始類型一樣使用。
是一個int[]
(或我猜想的任何基本數組)對象或原始?
看看,我似乎無法找到與此相同的問題。我的問題是關於Java中的int[]
。是int []一個對象嗎?
當你創建一個int[]
,使用此語法:
int[] x = new int[5];
這是int[]
一部分也讓我覺得這是一個Object
的方法,但它並沒有遵循Java命名約定類,這讓我感到困惑。它也是一個原始類型的數組,可以像原始類型一樣使用。
是一個int[]
(或我猜想的任何基本數組)對象或原始?
Java中的數組是Object
的子類,因此它是一個對象類型 - 即使它包含基本類型。您可以檢查:
int[] x = new int[5];
if (x instanceof Object)
System.out.println("It's an Object!");
Java中的所有數組都被視爲對象。你可以看到這個in the Java Language Specification, Ch. 10:
在Java編程語言,陣列(第4.3.1節),是動態創建的對象,並且可以被分配給Object類型(§4.3.2)的變量。可以在數組上調用Object類的所有方法。
類型int[]
是Object
一個子類,其具有所有從Object
的方法。儘管在語法上它看起來與其他對象類型不同(例如,名稱中包含一個基本類型,並且沒有類定義),但Java語言確實將它們視爲對象。
希望這會有所幫助!
int[] x = new int[5];
Object a=(Object)x;
int[] y= (int[])a;
這是沒有用的,只是指出用戶在問什麼。它並沒有真正回答他們的問題。 – 2013-05-13 17:39:29
「的數組是保持單一類型的值的固定數量的容器對象。」這是陣列是如何在oracle tutorials。所以定義不僅基本數組而且對象陣列是對象本身。
http://stackoverflow.com/questions/8781022/is-an-array-an-object-in-java – 2013-05-13 17:33:25
那麼安定那一個。迅速關閉! – christopher 2013-05-13 17:34:14
'System.out.println(x instanceof Object);'given'true' =) – 2013-05-13 17:36:15