1. 程式人生 > >使用Java把16進位制數轉化成10進位制

使用Java把16進位制數轉化成10進位制

在平時的學習中,會碰見一些進位制的轉換,如16進位制轉成10進位制,那麼如何在java程式設計中實現這些實用的功能,簡單寫一下。

     16進位制數轉化成10進位制

      這裡採用一個switch來實現,把讀入的16進位制字串轉化成10進位制,思想是把讀入的字串的每一位轉化成10進位制的數字,然後再進行累加算出代表的10進位制的數。
public class Main
    {
    
     

	public static void main(String[] args)
           {
         
            Scanner scan = new Scanner(System.in);
          
            while(scan.hasNext())
                {  
            	      
                     String str = scan.nextLine();
                     int sum = 0;
                     
                     for(int i = 0;i<str.length()-2;i++)
                     {     
                    	 
                    	   sum=sum+trans2int(str.charAt(2+i))*(int)Math.pow(16, str.length()-3-i);
                    	  
                     }
                System.out.println(sum);   
          }
              
       }

   public static int trans2int(char c)
   {
	       int num = 0;
	    	 switch (c) 
	    	 {
	    	 case 'A' :  num = 10; break;
	    	  
	    	 case 'B' :  num = 11;break;
	    	 case 'C' :  num = 12;break;
	    	 case 'D' :  num = 13;break;
	    	 case 'E' :  num = 14;break;
	    	 case 'F' :  num = 15;break;
	    	 default :    num =  c-'0';
	    	 }
	    	 return num;
   }
}

其中trans2int 就是把16進制中的字元轉化成整數進行計算