Java如何将十六进制数转换为十进制数的程序
Posted Advancing Swift
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java如何将十六进制数转换为十进制数的程序相关的知识,希望对你有一定的参考价值。
package com.swift; import java.util.Scanner; public class Hex2Decimal { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("please enter a Hex:"); String hex = scan.nextLine(); hex = hex.toUpperCase(); System.out.println("The hex is:" + hex); int decimal = 0; for (int i = 0; i < hex.length(); i++) { if (hexChar2Decimal(hex.charAt(hex.length() - 1 - i)) != -1) { decimal = (int) (decimal + hexChar2Decimal(hex.charAt(hex.length() - 1 - i)) * Math.pow(16, i)); } else { System.out.println("enter error, decimal will be zero!"); break; } } System.out.println("decimal=" + decimal); } private static int hexChar2Decimal(char charAt) { if (charAt >= ‘A‘ && charAt <= ‘F‘) return charAt - ‘A‘ + 10; else if (charAt >= ‘0‘ && charAt <= ‘9‘) return charAt-‘0‘; else return -1; } }
十六进制数AF3转换原理:3*16^0+F*16^1+A*16^2 其中^表示幂运算,F和A需转换成十进制数15和10
以上是关于Java如何将十六进制数转换为十进制数的程序的主要内容,如果未能解决你的问题,请参考以下文章
如何将表示二进制的 int 向量转换为表示十进制数的 int 向量? C++