基础练习 十六进制转十进制

问题描述
  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
样例输入
FFFF
样例输出
65535
 1 import java.util.Scanner;
 2 
 3 public class Main {
 4     public static void main(String[] args) {
 5         Scanner input = new Scanner(System.in);
 6         String temp = input.next();
 7         long sum = 0;
 8         for(int i=0;i<temp.length();i++){
 9             if(temp.charAt(i)>='0'&&temp.charAt(i)<='9'){
10                 sum = (long) (sum+(temp.charAt(i)-'0')*Math.pow(16, temp.length()-1-i));
11             }else{
12                 sum = (long) (sum+(temp.charAt(i)-'A'+10)*Math.pow(16, temp.length()-1-i));
13             }
14         }
15         System.out.println(sum);
16     }
17 }

 

posted @ 2017-03-01 00:12  来一点音乐  阅读(216)  评论(0编辑  收藏  举报