2012-10-15 124 views
1

我正在爲我的編程類編寫一個非常簡單的方法,並遇到了一個問題,我無法在筆記中找到解決方案。簡單數組的問題

你看我應該創建一個方法,生成一個任意長度的數組,每個連續值是最後一個(利率)的倍數。問題是我找不到爲什麼我的代碼不工作,它編譯但不打印我想要的。

而不是打印的東西,如(由值)的數組:

[1, 5, 25, 125]

它打印出隱藏文本,如:

[[email protected] or [[email protected] 

是否有人可以幫忙嗎?下面是一個鏈接到我的代碼的圖像:

My Code

My Code

+3

爲了將來的參考,請將代碼粘貼到此處。該鏈接可能不適用於那些在工作的人。點擊鏈接太費力:P –

+1

你不應該在StackOverflow上發佈代碼的圖片;相反,粘貼代碼,我們可以實際編輯它們。圖片需要轉錄。 – Amelia

回答

7
System.out.print(Statements) 

is essentially System.out.println(Statements.toString()) ; 

它打印的地址聲明指向。

[[email protected]" or "[[email protected]" As you may have observed changes because the location of the array in memory changes. Hence the address is different or may be the same if reused. 

您需要遍歷Statements

僞代碼:

for i to Statements.length 
    print Statements[i] 

這裏是一個不錯link來幫助你。

+0

所以你在說什麼是System.out.print'的數組我只指出了一個值的地址,而不是值本身?另外,我需要做一個for語句來聲明數組的每一行空間來打印每一行? –

+0

@Luke是的,你需要使用for語句並將它們合併爲一個字符串等。 – Amelia

+0

不,它不打印數組。它隱式地調用.toString(),它打印出Array存儲在內存中的地址。 是的,你需要一個for循環來打印每個元素。 –

4

對於打印陣列在Java中,使用方法:

System.out.println(java.util.Arrays.toString(Statements)); 

希望這有助於!

+1

這真的有用嗎?哇,如果它..讓我試試.. –

+0

謝謝!這也有幫助! –

+1

圓滑,它確實有效。 +1。 –