为了账号安全,请及时绑定邮箱和手机立即绑定

此段代码字符串转换成整型时为何出错。

此段代码字符串转换成整型时为何出错。

素胚勾勒不出你 2019-02-16 17:47:38
以下代码是一个十六进制转十进制。我的想法是十六进制转二进制转十进制。但是在二进制转十进制的过程中出现了问题,提示数据格式异常。 请问是何种原因,如何解决? import java.util.Scanner; public class Sixteen_Ten { public static void main(String[] args)throws Exception{ Scanner in = new Scanner(System.in); String s = in.next(); String[] arr = new String[s.length()]; for(int i = 0;i<s.length();i++){ arr[i]=s.substring(i,i+1); } for(int i = 0;i<arr.length;i++){ switch(arr[i]){ case "0": arr[i]="0000"; case "1": arr[i]="0001"; case "2": arr[i]="0010"; case "3": arr[i]="0011"; case "4": arr[i]="0100"; case "5": arr[i]="0101"; case "6": arr[i]="0110"; case "7": arr[i]="0111"; case "8": arr[i]="1000"; case "9": arr[i]="1001"; case "A": arr[i]="1010"; case "B": arr[i]="1011"; case "C": arr[i]="1100"; case "D": arr[i]="1101"; case "E": arr[i]="1110"; case "F": arr[i]="1111"; break; } } String er = ""; double num = 0; for(int i = 0;i<arr.length;i++){ er = er + arr[i]; } String[] arr1 = new String[er.length()]; int[] arr2 = new int[er.length()]; for(int i = 0;i<er.length();i++){ arr1[i]=s.substring(i,i+1); arr2[i]=Integer.valueOf(arr1[i]).intValue();//在此处发生错误 num = num + Math.pow((double)arr2[i], i); } System.out.print((int)num); } }
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 382 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信