最近在做netty
解析tcp
協議的時候,遇到了hexstring
和string
的轉換問題。
hex是由對應機器語言碼和/或常量資料的十六進製制編碼數字組成。
1
string hex = integer.tohexstring(48); // 30
12
string num = integer.valueof("fafa", 16); //64250string num = integer.parseint("fafa", 16); //64250
若十進位制數為負數,轉換將出現問題。
如integer.tohexstring(-6)
將輸出fffffa
,此時若進行十六進製制轉十進位制將報numberformatexception
,因此此處在轉為hex
的時候需做如下操作
1
integer.tohexstring(-6 & 0xff);
十進位制 十六進製制
把十進位制整數轉換為十六進製制,格式為0x開頭,10 15由大寫字母a f表示。input 每行乙個整數x,0 x 2 31。output 每行輸出對應的八位十六進製制整數,包括前導0。sample input 0 1023 sample output 0x00000000 0x000003ff 水...
十進位制轉十六進製制(進製轉換)
問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十進位制數16在十六進製制中是10,而十進位制的17在十六進製制中是11,以此類推...
十進位制 十六進製制轉換 javascript實現
十進位制整數轉成十六進製制數 輸入 dec 十進位制整數 輸出hex 返回 0x 開頭的轉換後的字串 原理 十進位制數通過 位操作轉換成二進位制,然後通過4bit取出為十六進製制。例如 dec 40000,二進位制是 1001110001000000 先轉換成 0x04c9 然後倒序轉換成十六進製制...