JAVA实现16进制转10进制
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进制相关推荐
- java 十六进制转十进制_「16进制转10进制」Java:十六进制转换成十进制 - seo实验室...
16进制转10进制 问题及代码: /* *问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~15分别用大写的英文字母A.B.C.D.E. ...
- java的16进制与10进制互相转换
今天遇到了进制转换的有趣问题,记录下来. 1,首先,10进制转16进制,大家应该都比较熟: Integer x = 666; String hex = x.toHexString(x); System ...
- java将16进制与10进制互相转换
今天遇到了进制转换的有趣问题,记录下来. 1,首先,10进制转16进制,大家应该都比较熟: Integer x = 666; String hex = x.toHexString(x); System ...
- 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 ...
- linux c int16进制转10进制,[编程题] 进制转换(16进制转10进制)
[编程题] 进制转换 3/3 [编程题] 进制转换 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 写出一个程序,接受一个十六进制的数,输出该数值的十进制表示. ...
- python 16进制转10进制, 8进制转10进制, 2进制转10进制的方法
python 16进制转10 进制, 8进制转10进制, 2进制转10进制 可以使用系统自带的 int 方法 具体如下: value = "0x1388" result = int ...
- 10进制转16进制,16进制转10进制,随机出一个6位十六进制颜色值
方案一: var num16 = "ffffff";var num10 = parseInt(num16,16);//16进制转10进制console.log(num10) // ...
- java 64进制转10进制_java进制转换
import java.math.BigDecimal; import java.util.LinkedList; import java.util.List; import java.util.st ...
- python16进制转10进制_python 字节串及10进制,16进制相关转换
进行协议解析时,总是会遇到各种各样的数据转换的问题,从二进制到十进制,从字节串到整数等等 整数之间的进制转换: 10进制转16进制: hex(16) ==> 0x10 16进制转10进制: in ...
- 关于物联网的各种转换,16进制 二进制 10进制 效验总结
字符串插入字符 /// <summary>/// 每隔n个字符插入一个字符/// </summary>/// <param name="input"& ...
最新文章
- android pop3与imap方式接收邮件(javamail)
- OCA读书笔记(9) - 管理数据同步
- C++从零实现神经网络(收藏版:两万字长文)
- 百度也出分享(百度分享)
- 清华团队率先抵达摩尔定律最后节点,0.34nm栅长晶体管研究登Nature,打破斯坦福纪录...
- Tomcat9+eclipse如何发布网站
- if you receive money from others
- Windows内存的一些知识点
- DataV:可视化大屏展示神器实战分享
- c语言中如何让诊断代码右移_如何检测和诊断生产中的慢代码
- ps怎么对比原图快捷键_PS学习之旅:ps如何制作满天星,让你夜晚的天空图片更美...
- 使用Axis,在webservice的服务器端如何取到客户端的IP地址
- python自学-我是如何自学 Python 的
- Vscode中HTML与CSS代码的快速写法
- python强大的数据类型转换
- keydown - keypress - keyup 用法和区别
- 类方法实现:用python实现一个简单的单词本,添加/查找/删除单词。
- matlab数据类型 —— 整型
- jmeter实现手机号归属地接口测试案例
- 两行Python代码调整视频的亮度