蓝桥网试题 java 基础练习 十六进制转十进制

----------------------------------------------------------------------------------------

貌似用int类型不会超出,但是.....

----------------------------------------------------------------------------------------

算法

 1 /*问题描述
 2   从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
 3   注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
 4 样例输入
 5 FFFF
 6 样例输出
 7 65535*/
 8 import java.util.*;
 9 public class Main {
10     public static void main(String[] args) {
11         String st = new Scanner(System.in).nextLine();
12         System.out.println(Long.parseLong(st, 16));
13     }
14 }

 

学习补充

Integer类

static int parseInt(String s)//将字符串参数作为有符号的十进制整数进行解析

static int parseInt(String s,int radix)// 使用第二个参数指定的基数,将字符串参数解析为有符号的整数。返回十进制整数(radix代表几进制)

示例:

parseInt("0", 10) 返回 0

parseInt("473", 10) 返回 473

parseInt("-0", 10) 返回 0

parseInt("-FF", 16) 返回 -255

parseInt("1100110", 2) 返回 102

parseInt("2147483647", 10) 返回 2147483647

parseInt("-2147483648", 10) 返回 -2147483648

parseInt("2147483648", 10) 抛出 NumberFormatException

parseInt("99", 8) 抛出 NumberFormatException

parseInt("Kona", 10) 抛出 NumberFormatException

parseInt("Kona", 27) 返回 411787

 

Long类

static long parseLong(String s) //将 string 参数解析为有符号十进制 long

static long parseLong(String s,int radix) //将 string 参数解析为有符号的 long,基数由第二个参数指定 返回十进制Long

 

 

 

 

原文地址:https://www.cnblogs.com/loveluking/p/6056491.html