您的位置:首页 > 编程语言 > Java开发

java16进制转10进制

2017-10-27 21:55 363 查看
题目描述

写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 )

输入描述:

输入一个十六进制的数值字符串。

输出描述:

输出该数值的十进制字符串。


import java.util.Scanner;  

public class Main {    

    public static void main(String[] args) {  

   

       //int a=(int) Math.pow(16, 2);

       //System.out.println(a);

        Scanner scanner = new Scanner(System.in);  

        while (scanner.hasNextLine()) {  

            String input = scanner.nextLine();  

            String s=input.substring(2, input.length());

          //System.out.println(s.length());

            int r=0;

           

            for(int i=0;i<s.length();i++)

            {

             if(s.charAt(i)>='0'&&s.charAt(i)<='9'){

            r+=(s.charAt(i)-'0')*(Math.pow(16, s.length()-i-1));

             }else if(s.charAt(i)>='a'&&s.charAt(i)<='z'){

            r+=(s.charAt(i)-'a'+10)*(Math.pow(16, s.length()-i-1));

             }else if(s.charAt(i)>='A'&&s.charAt(i)<='Z'){

            r+=(s.charAt(i)-'A'+10)*(Math.pow(16, s.length()-i-1));

             }

            }

            System.out.println(r);

         }

       

      }  

 }  

    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: