1. 程式人生 > >Java:十六進位制轉換成十進位制

Java:十六進位制轉換成十進位制

問題及程式碼:

/* 
 *問題描述 
  從鍵盤輸入一個不超過8位的正的十六進位制數字符串,將它轉換為正的十進位制數後輸出。 
   注:十六進位制數中的10~15分別用大寫的英文字母A、B、C、D、E、F表示。 
 *樣例輸入 
    FFFF 
 *樣例輸出 
    65535 
*/  
import java.util.Scanner;  
public class Main {  
    public static void main(String[] args) {  
        Scanner in = new Scanner(System.in);  
        String hex_num = in.nextLine();  
        long dec_num = Long.parseLong(hex_num, 16);  
        System.out.println(dec_num);  
    }  
}  

知識點總結:

Long.parseLong( , );  


  1、對字串引數的解析就是按照這個進位制標準進行轉化成10進位制的數值。  
  比如  :

 System.out.println(Long.parseLong("473",  16));  
 System.out.println(Long.parseLong("473",10));  

  輸出為:  

1139  
473

 
說明16進位制的473轉換成十進位制就是1139,十進位制的473轉換成十進位制就是473

2、之所以使用long 是因為轉換成的十進位制數超出了int的範圍。