我在寫這沒有問題:(它也不會給出任何錯誤)如何從一個字符串解析一個hex-int到一個Integer?
int hex = 0xFFFFFFFF;
的整數都必須有一個alpha值也!
但當我嘗試這樣做:
Integer hex = Integer.parseInt("0xFFFFFFFF");
// Or I try this:
Integer hex = Integer.parseInt("FFFFFFFF");
我得到一個java.lang.NumberFormatException: For input string: "0xFFFFFFFF"
拋出!
爲什麼這不起作用?
我猜測,有一些其他的方式來解析十六進制整數,我只是沒有意識到,我真的需要能夠從我正在製作的程序字符串解析十六進制。
作爲一個側面說明,你應該用'INT六角去= ...'而不是'Integer hex = ...'。大寫的是對象形式,而不是原始形式。雖然兩者都可以工作,但試圖將'Integer'用作'int'將會強制Java重複取消箱子和重新箱子,減慢你的應用並佔用更多的內存,這兩者都不是一個好主意。這也不是很好的編碼習慣。 – 2014-11-21 17:06:50