天天看點

java十六進制轉化為二進制數_Java寫的16進制數與2進制數的互相轉換.docx

Java寫的16進制數與2進制數的互相轉換

//十六進制數轉二進制數import java.util.Scanner;publicclass H_to_B {staticvoid HtoB_fun(String n){char[] ch=n.toCharArray();char str;String s="";int p=0;for(int i=0;i='0'&&str<='9'){String st= Character.toString(str);//字元轉字元串p=Integer.valueOf(st).intValue();//字元串轉整型}else{if(str=='A'){str=10;}if(str=='B'){str=11;}if(str=='C'){str=12;}if(str=='D'){str=13;}if(str=='E'){str=14;}if(str=='F'){str=15;}p=(int)str;}switch (p){case 0 : s+="0000";break;case 1 : s+="0001";break;case 2 : s+="0010";break;case 3 : s+="0011";break;case 4 : s+="0100";break;case 5 : s+="0101";break;case 6 : s+="0110";break;case 7 : s+="0111";break;case 8 : s+="1000";break;case 9 : s+="1001";break;case 10 : s+="1010";break;case 11 : s+="1011";break;case 12 : s+="1100";break;case 13 : s+="1101";break;case 14 : s+="1110";break;case 15 : s+="1111";break;default :System.out.println("error!");break;}}System.out.println("結果為二進制:");System.out.println(s);}publicstaticvoid main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("請輸入16進制數:");String str=sc.nextLine();HtoB_fun(str);}}//二進制數轉十六進制數import java.util.Scanner;publicclass B_to_H {staticvoid BtoH_fun(String str){String s=""; //s 用來接收每位十六進制數的位數int judge=4-(str.length()%4);//前面該補judge個0if(judge!=0&&judge!=4){ //當str.length()%4為0時,judge為4,是以要加judge!=4這個條件for(int i=1;i<=judge;i++){str="0"+str;}}char[] ch=str.toCharArray();int[] a=newint[str.length()];for(int i=0;i=10){switch(c){case 10 :s+="A";break;case 11 :s+="B";break;case 12 :s+="C";break;case 13 :s+="D";break;case 14 :s+="E";break;case 15 :s+="F";break;}}}}System.out.println("結果為十六進制數:"+s);}publicstaticvoid main(String[] args) {Scanner sc=new Scanner(System.