2015-10-03 53 views
-1

所有關於二進制文字的例子都是這樣的: int a=0b1011 我的問題是,我可以將現有的變量翻譯成這種形式嗎?例如, from int b=10000011;我想獲得int c=0b10000011Java二進制文字用法

+0

你會怎麼做翻譯?十進制10000011與二進制10000011不同,十進制是131? – dasblinkenlight

+0

我不需要他們是平等的......這只是一個例子,說我在找什麼。像'String'一樣,我們可以寫'String c =「0b」+「10000011」',我只是好奇如何將二進制文字添加到任何現有的「int」中。 – kahofanfan

+0

目前尚不清楚你在這裏要求什麼。你爲什麼要把'int b = 10000011'改成'int c = 0b10000011'? – EJP

回答

0

你可以使用Integer.parseInt(String, int)之類的東西,

int b = 10000011; 
int c = Integer.parseInt(String.valueOf(b), 2); 
int d = 0b10000011; 
System.out.println(c == d); 

我也得到true

+0

問題是c是隱含的二進制形式的整數。 'System.out.println(c)'只顯示它的整數值。 – kahofanfan

+0

二進制計算機以二進制形式存儲所有內容。它代表十進制中的十進制文字。請說明你想解決什麼問題。如果你想'c'的二進制值調用'Integer.toBinaryString(c)' –

+0

然後它會返回一個'String'而不是'int'。無論如何,我認爲這是唯一的選擇,但它必須將'int'轉換爲'String',將'String'轉換爲'int'。 – kahofanfan