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 阅读 10 次 更新于 2025-06-20 00:33:35 我来答关注问题0
  •  翡希信息咨询 java16进制怎么转10进制

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

  • 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: "...

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

  •  汐言qwq a2b16进制转换为10进制

    将控制台接收的字符串转化为数组;新建另一个数组 (arr1) 该数组的包含了十六进制的所有数字,找出对应的下表即为十进制的数值。把最后的结果相加安位数等值的方式相加就得到相应的答案了(最后结果要除以10,因为在运算的过程中将数字增大了十倍)package duoxiancheng;import java.util.Scanner;public...

  •  听歌不循环 16进制转10进制

    (numStr.charAt(i) - 'A' + 10)就是将十六进制中的A-Z转为对应的十六进制值。这里的这种算法是按位判断取值 num = num*16 + (numStr.charAt(i)-'0')例如十六进制2A3D 首先它取出2,默认就只有2,结果num就为2 接着继续又取出A,则前面的2自然是需要16^1*2 + A,num=32 + 10 取...

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

Java相关话题

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