java一个16进制转10进制,求查找问题所在。

最简单的改法是public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("Enter a hex number: ");String hex = input.next();System.out.print("The decimal number for the hex is: " + Integer.valueOf(hex, 16));}如果你不想用valueOf(h...
java一个16进制转10进制,求查找问题所在。
你的程序我帮你改完了,你看看吧.
完整的程序如下:(改动的地方见注释)
import java.util.Scanner;public class HexToDecimal { public static void main(String[]args){ Scanner input = new Scanner(System.in); System.out.print("Enter a hex number: "); String hex = input.next(); System.out.print("The decimal number for the hex is: "+ hexToDecimal(hex.toUpperCase())); } public static int hexToDecimal(String hex){ int decimalValue = 0; for(int i = 0;i<hex.length();i++){ if(hex.charAt(i)>'9'){//这里改一下 if(hex.charAt(i)>'F' || hex.charAt(i)<65){//这里改一下 return 00000; } else decimalValue =decimalValue+(int) (Math.pow(16, hex.length()-1-i)*(hex.charAt(i)-55)); }else{ decimalValue =decimalValue+(int) (Math.pow(16, hex.length()-1-i)*(Integer.parseInt(hex.charAt(i)+"",10)));//这里改一下 } } return decimalValue; }}运行结果:
Enter a hex number: 2FThe decimal number for the hex is: 47
2014-08-11
最简单的改法是
public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.print("Enter a hex number: ");

String hex = input.next();

System.out.print("The decimal number for the hex is: " + Integer.valueOf(hex, 16));

}
如果你不想用valueOf(hex,16),那么你后面也不该用valueOf(...,10)2014-08-11
mengvlog 阅读 46 次 更新于 2025-10-29 12:01:54 我来答关注问题0
  •  翡希信息咨询 java16进制怎么转10进制

    在Java中将十六进制转换为十进制,可以使用Integer类的parseInt方法。具体步骤如下:一、方法说明 将十六进制数字字符串作为第一个参数传递给Integer.parseInt方法。 第二个参数指定为16,表明输入字符串是十六进制的。二、转换示例 例如,要将十六进制字符串”A”转换为十进制,可以使用Integer.p...

  • 1. 将十六进制数字字符串作为参数传递给Integer类的parseInt方法。该方法可以将十六进制字符串转换为对应的十进制整数。例如,要将十六进制字符串"A"转换为十进制,可以使用Integer.parseInt。其中,"A"是要转换的十六进制字符串,而第二个参数指定输入字符串是十六进制的。具体过程如下:一、了解十六进制与...

  • anonymous 16进制怎么转换成10进制和2进制?例如一个数是(65)16进制

    转10进制: 6 * 16 + 5 = 101 转二进制更简单,十六进制里面的每个数字,对应二进制里的4个数字,所以65转换的结果就是:6 = 0110 5 = 0101 65 = 01100101

  • love爱有缘 java的 OXOB,0x1C,OXOD的16进制和10进制的数是多少

    这个你打印下就知道了! 应该是零 不是 O 吧 OX 0b就是16进制 转为10进制: 11 1c : 1*16+12 = 28 0d : 13

  •  太平洋科技 16进制转换成10进制怎样算?

    16进制转10进制 16进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。例:2AF5换算成10进制:用竖式计算:第0位: 5 * 16^0...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部