我正在瀏覽我的一些朋友Java,他目前正在睡覺。我的電腦上沒有JDK,而且我從未碰過Java。這個表達式中校驗和的值是多少?將字符串添加到Java中的int時會得到什麼結果?
int score = 15;
String name = "Me";
String checksum = score + name + "salt";
//do stuff
我正在瀏覽我的一些朋友Java,他目前正在睡覺。我的電腦上沒有JDK,而且我從未碰過Java。這個表達式中校驗和的值是多少?將字符串添加到Java中的int時會得到什麼結果?
int score = 15;
String name = "Me";
String checksum = score + name + "salt";
//do stuff
這將是「15Mesalt」
它只是增加了字符串的數量,沒有多餘的裝飾,沒有什麼真正看中的整數。
好的,嗯。謝謝。這就是我的想法,但散列函數的輸出似乎並不一致。謝謝。我得看看其他地方 – Kaslai 2012-04-15 11:46:03
的在將被轉換成字符串,所以checksum
值將是15Mesalt
。
從java Language Specification (15.18.1)上字符串連接:
如果只有一個操作數的表達是String類型的情況下,對其它操作數執行的字符串轉換以產生在運行時的字符串。
您正在連接字符串中的int。在String concatenation int中轉換爲String。
和結果將是
15MEsalt
結果是15Mesalt
。您的右側變量爲String
,因此+
操作員與操作數聯繫。
'String checksum ..'你確定*「我正在瀏覽我的一些朋友Java並且他目前正在睡覺。」*實際上並不意味着*「我是**黑客**我朋友的Java而他睡着了「*? – 2012-04-15 11:59:00
有趣。我的意思是完全一樣的,你碰巧和我的朋友有相同的名字;) – Kaslai 2012-04-15 12:04:59
幸運我沒有任何軟件'保護'。實際上,我的大部分都是開源的。 :)對我的朋友表示同情,並建議他們找到更好的朋友(即朋友)。 ;) – 2012-04-15 12:12:05