Java将十六进制转换为十进制

本文概述

  • Java十六进制到十进制的转换:Integer.parseInt()
  • Java十六进制到十进制的转换:自定义逻辑
我们可以使用Integer.parseInt()方法或自定义逻辑在Java中将十六进制转换为十进制。
Java十六进制到十进制的转换:Integer.parseInt()Integer.parseInt()方法使用给定的redix将字符串转换为int。 parseInt()方法的签名如下:
public static int parseInt(String s, int redix)

让我们看一下在Java中将十六进制转换为十进制的简单示例。
public class HexToDecimalExample1{ public static void main(String args[]){ String hex="a"; int decimal=Integer.parseInt(hex, 16); System.out.println(decimal); }}

立即测试
【Java将十六进制转换为十进制】输出:
10

让我们看看Integer.parseInt()方法的另一个示例。
public class HexToDecimalExample2{ public static void main(String args[]){ System.out.println(Integer.parseInt("a", 16)); System.out.println(Integer.parseInt("f", 16)); System.out.println(Integer.parseInt("121", 16)); }}

立即测试
输出:
10 15 289

Java十六进制到十进制的转换:自定义逻辑我们可以使用自定义逻辑在Java中将十六进制转换为十进制。
public class HexToDecimalExample3{ public static int getDecimal(String hex){ String digits = "0123456789ABCDEF"; hex = hex.toUpperCase(); int val = 0; for (int i = 0; i < hex.length(); i++) { char c = hex.charAt(i); int d = digits.indexOf(c); val = 16*val + d; } return val; } public static void main(String args[]){ System.out.println("Decimal of a is: "+getDecimal("a")); System.out.println("Decimal of f is: "+getDecimal("f")); System.out.println("Decimal of 121 is: "+getDecimal("121")); }}

立即测试
输出:
Decimal of a is: 10 Decimal of f is: 15 Decimal of 121 is: 289

    推荐阅读