Binary 案例转换二进制到十六进制故障
嘿,伙计们,我的教授想在不使用java中的内置函数如toHex或toBinary()的情况下手动将二进制转换为十六进制,我想我找到了一种使用字符串将bin转换为十六进制的酷方法Binary 案例转换二进制到十六进制故障,binary,hex,Binary,Hex,嘿,伙计们,我的教授想在不使用java中的内置函数如toHex或toBinary()的情况下手动将二进制转换为十六进制,我想我找到了一种使用字符串将bin转换为十六进制的酷方法 StringBuffer psd = new StringBuffer(); int binary = 0; System.out.println("Enter a Binary number to be converted."); System.out.println("
StringBuffer psd = new StringBuffer();
int binary = 0;
System.out.println("Enter a Binary number to be converted.");
System.out.println("Format: xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx");
Scanner keyboard = new Scanner(System.in);
String x = keyboard.nextLine().replaceAll(" ", "/"); ///.trim().replaceAll(" ", "/");
Scanner seperate = new Scanner(x).useDelimiter("/");
//10 System.out.println(x);
// System.out.println(seperate);
while(seperate.hasNext()){
String s1 = seperate.next();
// binary = Integer.parseInt(s1);
String HexString = null;
//int binary = 1010;
switch (s1){
case 0001: HexString = "1";
psd.append(HexString);
break;
case 0010: HexString = "2";
psd.append(HexString);
break;
case 0011: HexString = "3";
psd.append(HexString);
break;
case 0100: HexString = "4";
psd.append(HexString);
break;
case 0101: HexString = "5";
psd.append(HexString);
break;
case 0110: HexString = "6";
psd.append(HexString);
break;
case 0111: HexString = "7";
psd.append(HexString);
break;
case 1000: HexString = "8";
psd.append(HexString);
break;
case 1001: HexString = "9";
psd.append(HexString);
break;
case 1010: HexString = "A";
psd.append(HexString);
break;
case 1011: HexString = "B";
psd.append(HexString);
break;
case 1100: HexString = "C";
psd.append(HexString);
break;
case 1101: HexString = "D";
psd.append(HexString);
break;
case 1110: HexString = "E";
psd.append(HexString);
break;
case 1111: HexString = "F";
psd.append(HexString);
break;
//StringBuffer psd = new StringBuffer();
//System.out.println(psd);
}
//System.out.println(binary);
//System.out.println(psd);
System.out.println(s1);
}
// System.out.println(binary);
System.out.println(psd);
//System.out.println(binary);
}
基本上所有的东西都能工作,但有前导零的情况除外
0110 0111 0101
…它不会更新变量
但是当它分析有一个前导1的情况时。它分别地转换它
有人能帮我一下我做错了什么吗。
提前谢谢。试试
案例“0001”
而不是案例0001
(和朋友们)是的,我也这么做了,但仍然没有用,我使用的是eclipse顺便说一句…但我仍然卡住了。