자바 byte 에서 log/int 형식 으로 변환, 반전
@Test
public void test6() {
byte b = 2;
System.out.println(b<<8);
System.out.println(b<<32);
}
输出结果:
512
2
也就是说,b移位的结果变成了int类型
char 형식의 계산
@Test
public void test6() {
char c = 2;
System.out.println(c<<16);
System.out.println(c<<32);
}
输出结果:
131072
2
요약: 데이터 형식 이 int 보다 짧 은 것, 즉 4 바이트 보다 작은 데이터 형식 으로 계산 결 과 는 모두 int 형식 데이터 형식 이 4 바이트 보다 크 면 유지 합 니 다.
int 와 log 형식 변환
* int 转 byte
public static byte[] int2Byte(int number) {
byte[] b = new byte[4];
b[0] = (byte) (number >> 24);
b[1] = (byte) (number >> 16);
b[2] = (byte) (number >> 8);
b[3] = (byte)number;
return b;
}
* byte转int,和上面的int2byte对应
public static int byte2Int(byte[] b) {
int i3 = (b[0] & 0xFF)<< 24;
int i2 = (b[1] & 0xFF)<< 16;
int i1 = (b[2] & 0xFF)<< 8;
int i0 = b[3] & 0xFF;
return i3 | i2 | i1 | i0;
}
long 과 byte 형식 변환 코드
* long 转换成 byte[]
public byte[] long2Byte(long number) {
byte[] b = new byte[8];
for(int i=0; i<8; i++) {
b[i] = (byte) (number>>((8-i-1)*8));
}
return b;
}
* byte[] 转换成 long,第一种方式
public long byte2Long(byte[] b) {
long end = 0;
for(int i=0; i<8; i++) {
end = end | ((long)(b[i] & 0xff)<
테스트 코드 long to byte
* 测试long到byte的转换,反转
@Test
public void test3() {
long n = 9000000000L;
byte[] b = long2Byte(n);
long number = byte2Long(b);
System.out.println(number);
long number2 = byte2Long2(b);
System.out.println(number2);
}
输出结果:
9000000000
9000000000
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.