十六进制转十进制 BASIC-12

十六进制转十进制

代码

import java.math.BigInteger;
import java.util.Scanner;
/*
 *  从键盘输入一个不超过8位的正的十六进制数字符串,
 * 将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母
A、B、C、D、E、F表示。
 * */
public class Main{
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String hex = sc.next();
		//int i16 = Integer.parseInt(hex,16);
        long i16 = Long.parseLong(hex.trim(),16);
		System.out.println(i16);
		
	}
	
}


image-20210331182315877

测试用例

FE65CDBA

这个数据运行错误应该是超出了int 的范围:-231~231-1

8位的正的十六进制数字符串最大FFFFFFFF:4294967295

超过了INT最大:2147483647

注意这块需要Long,因为Int的范围已经不够了。API文档中该方法的解释如下:

image-20210331182504672

posted @   记录学习Blog  阅读(62)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示