50,528
社区成员
发帖
与我相关
我的任务
分享
for(int i=0; i<strs.length; ++i){
int tmp = Integer.parseInt(strs[i], 16);
b[i] = (byte)(tmp>Byte.MAX_VALUE ? (Byte.MAX_VALUE-tmp) : tmp);
}
这样从虽然有负数,但是正好和F5等匹配
import java.util.*;
public class Main{
public static void main(String[] args) {
String str = "00 00 04 F5 FA C8 2A 90";
String[] strs = str.split("\\s+");
byte[] b = new byte[strs.length];
for(int i=0; i<strs.length; ++i){
// System.out.println(Integer.parseInt(strs[i], 16));
try{
b[i] = Byte.parseByte(strs[i], 16);
}
catch(Exception e){
e.printStackTrace();
}
}
System.out.println(Arrays.toString(b));
}
}
额,F5等已经超出byte的范围了,byte最大127, F5是245!