byte 16進法

1386 ワード


 
Java言語には8つの基本タイプがあります.6種類の数値タイプ(4つの整数型、2つの浮動小数点型)、1つの文字タイプ、もう1つのブール型.1、整数:int、short、byte、long 2、浮動小数点型:float、double 3、文字:char 4、ブール:boolean
 
基本型别
サイズ
最小値
最大値
boolean
-----
-----
------
char
16-bit
Unicode 0
Unicode 2^16-1
byte
8-bit
-128
+127
short
16-bit
-2^15
+2^15-1
int
32-bit
-2^31
+2^31-1
long
64-bit
-2^63
+2^63-1
float
32-bit
IEEE754
IEEE754
double
64-bit
IEEE754
IEEE754
void
 
 
 
 
Javaではbyteバイナリ表現が8ビットを占めていますが、16進数の各文字はバイナリ表現で4ビットを占めていることがわかります.
byteごとに2つの対応する16進法に変換することができます
byteの上位4桁と下位4桁をそれぞれ16進数に変換する.結合してbyteを16進数に変換する文字列を得る
結果.byte毎に16進数に変換する2ビットの16進数を占める.
 
public static String byte2hex(byte[] src){

StringBuilder str = new StringBuilder();

if(src == null || src.length <=0){

return null;

}

for(int i=0;i<scr.length;i++){

int v = src[i] & 0xFF;

String hv = Integer.toHexString(v);

if(hv.length() <2){

str.append(0);

}

str.append(hv);

}

return str.toString();

}