• 十六进制转十进制_蓝桥杯


    问题描述
      从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
      注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
    样例输入
    FFFF
    样例输出
    65535
    package jiChuLianXi;
    
    import java.util.Scanner;
    
    public class HexadecimaToDecimal1{
        
        public static long hTd(String s){
            long res = 0; //此处要用长整型,因为8位十六进制数转换成的十进制数已经超过int的最大值
            int len = s.length();
    //        System.out.println(len);
            for(int i=0; i<len; i++){
                if('0'<=s.charAt(i) && s.charAt(i)<='9')
                    res += (s.charAt(i)-'0')*Math.pow(16, len-i-1);
                else
                    res += (s.charAt(i)-'A'+10)*Math.pow(16, len-i-1);
    //                System.out.println((s.charAt(i)-'A'+10)*Math.pow(16, len-i-1));
            }
            return res;
        }
        
        public static void main(String argv[]){
            Scanner scanner = new Scanner(System.in);
            String str = scanner.next();
            scanner.close();
            System.out.println(hTd(str));
        }
    }

    另外,Java拥有非常强大的库!

    /**
     * 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
     * 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
     */
    package jiChuLianXi;
    
    import java.util.Scanner;
    
    public class HexadecimaToDecimal {
        
        public static void main(String argv[]){
            Scanner scanner = new Scanner(System.in);
            String hex_num = scanner.nextLine();  
            long dec_num = Long.parseLong(hex_num, 16); //第二个参数是10就转换成十进制,是16就转换成十六进制
            scanner.close();  
            System.out.println(dec_num);
        }
    }
  • 相关阅读:
    ios开发中的基本设计模式
    Swift进阶
    转帖:深入理解JavaScript系列
    触摸事件、手势识别、摇晃事件、耳机线控
    打造自己的“美图秀秀”
    地图与定位
    python 深拷贝,浅拷贝
    Django 路由(SimpleRouter, DefaultRouter,ExtendedDefaultRouter)
    Django 国际化(翻译)
    wkhtmltopdf 转换后 表格不显示 python解决方案
  • 原文地址:https://www.cnblogs.com/LieYanAnYing/p/12180649.html
Copyright © 2020-2023  润新知