1. 程式人生 > >Java如何將十六進制數轉換為十進制數的程序

Java如何將十六進制數轉換為十進制數的程序

swift int i++ 進制數 pub 原理 lin uppercase enter

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如何將十六進制數轉換為十進制數的程序