java中十六进制转十进制,可以使用Integer类的parseInt()方法直接转换,也可以自己写一个转换函数。

一、 Integer.parseInt()
十六进制转十进制,简单的方法就是使用Integer.parseInt()方法进制转换,一步到位。
1.如果输入的是不带0x表示的十六进制数,直接转换即可。

     Scanner sc = new Scanner(System.in);while(sc.hasNextLine()){String str = sc.nextLine();int x=Integer.parseInt(str,16);System.out.println(x);}

测试结果:

输入:1A
输出:26

2.如果输入的是带有0x标识的十六进制数,需要截去前面两位标识。

     Scanner sc = new Scanner(System.in);while(sc.hasNextLine()){String str = sc.nextLine();int x=Integer.parseInt(str.substring(2),16);System.out.println(x);}

测试结果:

输入:0x1A
输出:26

二、hexToDecimal

稍复杂的方法是自己写一个转换函数。使用一个HashMap把“0-9,A-F”与“0-15”的key-value一一存储起来,然后把读取的十六进制数按位存储,然后再使用数据计算16转10的方式计算。

public static int convertNum(String str){String[] c={"A","B","C","D","E","F"};HashMap<String,Integer> hashmap= new HashMap<>();for(int i=0; i<=9;i++){hashmap.put(i+"",i);}for(int j=10;j<=15;j++){hashmap.put(c[j-10],j);}String[] st=new String[str.length()];for(int i=0;i<=str.length()-1;i++){st[i]=str.substring(i,i+1);}int num=0;for(int i=2;i<=st.length-1;i++)//这里需要注意,如果输入是类似"1A"没有标识的16进制数,i的值从0开始//如果是"0x1A"这样有标识符的16进制,则在计算时,需要截掉0x这两位标识,i从2开始{num += hashmap.get(st[i]) * Math.pow(16,st.length-1-i);}return num;}

在计算时,如果输入的16进制数包含小写,使用toUpperCase()转换成统一的大写字母计算即可.

最后,十进制转二进制,八进制,十六进制,可以直接使用Integer类提供的方法直接转换,分别是toBinaryString(),toOctalString(),toHexString()方法。

JAVA实现16进制转10进制相关推荐

  1. java 十六进制转十进制_「16进制转10进制」Java:十六进制转换成十进制 - seo实验室...

    16进制转10进制 问题及代码: /* *问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~15分别用大写的英文字母A.B.C.D.E. ...

  2. java的16进制与10进制互相转换

    今天遇到了进制转换的有趣问题,记录下来. 1,首先,10进制转16进制,大家应该都比较熟: Integer x = 666; String hex = x.toHexString(x); System ...

  3. java将16进制与10进制互相转换

    今天遇到了进制转换的有趣问题,记录下来. 1,首先,10进制转16进制,大家应该都比较熟: Integer x = 666; String hex = x.toHexString(x); System ...

  4. java 10zhuan8,Java代码 10进制转2、8、16进制转换 / 2、8、16进制转10进制转换

    public static void main(String[] args) { int i = 10; System.out.println("***********10进制转换2进制.8 ...

  5. linux c int16进制转10进制,[编程题] 进制转换(16进制转10进制)

    [编程题] 进制转换 3/3 [编程题] 进制转换 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 写出一个程序,接受一个十六进制的数,输出该数值的十进制表示. ...

  6. python 16进制转10进制, 8进制转10进制, 2进制转10进制的方法

    python 16进制转10 进制, 8进制转10进制, 2进制转10进制 可以使用系统自带的 int 方法 具体如下: value = "0x1388" result = int ...

  7. 10进制转16进制,16进制转10进制,随机出一个6位十六进制颜色值

    方案一: var num16 = "ffffff";var num10 = parseInt(num16,16);//16进制转10进制console.log(num10) // ...

  8. java 64进制转10进制_java进制转换

    import java.math.BigDecimal; import java.util.LinkedList; import java.util.List; import java.util.st ...

  9. python16进制转10进制_python 字节串及10进制,16进制相关转换

    进行协议解析时,总是会遇到各种各样的数据转换的问题,从二进制到十进制,从字节串到整数等等 整数之间的进制转换: 10进制转16进制: hex(16) ==> 0x10 16进制转10进制: in ...

  10. 关于物联网的各种转换,16进制 二进制 10进制 效验总结

    字符串插入字符 /// <summary>/// 每隔n个字符插入一个字符/// </summary>/// <param name="input"& ...

最新文章

  1. android pop3与imap方式接收邮件(javamail)
  2. OCA读书笔记(9) - 管理数据同步
  3. C++从零实现神经网络(收藏版:两万字长文)
  4. 百度也出分享(百度分享)
  5. 清华团队率先抵达摩尔定律最后节点,0.34nm栅长晶体管研究登Nature,打破斯坦福纪录...
  6. Tomcat9+eclipse如何发布网站
  7. if you receive money from others
  8. Windows内存的一些知识点
  9. DataV:可视化大屏展示神器实战分享
  10. c语言中如何让诊断代码右移_如何检测和诊断生产中的慢代码
  11. ps怎么对比原图快捷键_PS学习之旅:ps如何制作满天星,让你夜晚的天空图片更美...
  12. 使用Axis,在webservice的服务器端如何取到客户端的IP地址
  13. python自学-我是如何自学 Python 的
  14. Vscode中HTML与CSS代码的快速写法
  15. python强大的数据类型转换
  16. keydown - keypress - keyup 用法和区别
  17. 类方法实现:用python实现一个简单的单词本,添加/查找/删除单词。
  18. matlab数据类型 —— 整型
  19. jmeter实现手机号归属地接口测试案例
  20. 两行Python代码调整视频的亮度

热门文章

  1. 【Unity3D】无法正确获取RectTransform的属性值导致计算出错
  2. 【PyTorch】PyTorch深度学习实践|视频学习笔记|P6-P9
  3. 设备管理系统软件都有哪些功能?
  4. Java两年工作经验面试
  5. 【好用的软件分享】Snipaste截图工具
  6. Dreamweaver cs6合理配色设置字体大小以提高代码阅读性
  7. Docker 方式部署 Solo 博客系统总结
  8. Codeforces731D 80-th Level Archeology
  9. git 常用简化软件开发和发布流程(二)
  10. 区块链在企业管理中的应用