第一题是二进制,八进制,十六进制转换十进制
public static void main(String[] args) throws IOException{
int y;
boolean b=true;
String str="100";
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
StringtoNumber2816 stringtoNumber=new StringtoNumber2816();
while(b){
System.out.println("请输入:");
str=br.readLine();
try{
if(str.indexOf("b")!=-1||str.indexOf("B")!=-1){ //查看str里有没有"b"或者"B"
String str1=str.substring(0, str.length()-1);
y=stringtoNumber.BinaryToDecimal(str1); //调用BinaryToDecimal()方法
System.out.println("十进制为:"+y);
}
else if(str.indexOf("o")!=-1||str.indexOf("O")!=-1){
String str1=str.substring(0, str.length()-1);
y=stringtoNumber.OctalToDecimal(str1);
System.out.println("十进制为:"+y);
}
else if(str.indexOf("h")!=-1||str.indexOf("H")!=-1){
String str1=str.substring(0, str.length()-1);
y=stringtoNumber.HexToDecimal(str1);
System.out.println("十进制为:"+y);
}
else if(str.indexOf("Q")!=-1||str.indexOf("q")!=-1){
break;
}
else {
System.out.println(str);
}
}catch(Exception e){System.out.println("输入错误,请重新输入:");}
}
}
第二题是十进制转换二进制,八进制,十六进制,和第一题差不多,对着修改下就行了