我創建了一個函數,它可以在我的數組中找到最多3個組。當我來打印這個時,內存地址[I @ 43c46747被打印,而不是數組中應該包含的最大值。Java打印陣列內存地址而不是陣列內容
我不允許使用任何進口聲明/任何先進的解決方法 - 試圖可能使用幫助函數?
謝謝:)
我創建了一個函數,它可以在我的數組中找到最多3個組。當我來打印這個時,內存地址[I @ 43c46747被打印,而不是數組中應該包含的最大值。Java打印陣列內存地址而不是陣列內容
我不允許使用任何進口聲明/任何先進的解決方法 - 試圖可能使用幫助函數?
謝謝:)
事實上,你看到的不是內存地址,而是數組的類名和散列值(十六進制形式)。這是從toString()
方法繼承的行爲java.lang.Object
您可以使用for-loop來逐個打印每個數組元素。
例如。
for (int i = 0; i < myArray.length; i ++) {
System.out.println(myArray[i]);
}
注意println
打印非原始類型的數組元素的toString
方法的結果。確保他們toString
,如果你想自定義的行爲,而不是「類名@散列值」
然後寫一個循環接一個打印陣列一個的每一個項目被正確重寫。 – 2014-12-05 16:27:43