Java 程序中的数字格式异常
我正在开发一个程序,该程序需要获取数组的大小,以及适合该数组的字符串,然后将这些字符串转换为ascii整数,并查看哪个更大。 我收到这些错误,不确定该怎么办:Java 程序中的数字格式异常,java,arrays,Java,Arrays,我正在开发一个程序,该程序需要获取数组的大小,以及适合该数组的字符串,然后将这些字符串转换为ascii整数,并查看哪个更大。 我收到这些错误,不确定该怎么办: Exception in thread "main" java.lang.NumberFormatException: For input string: "74111104110" at java.base/java.lang.NumberFormatException.forInputStrin
Exception in thread "main" java.lang.NumberFormatException: For input string: "74111104110"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68)
at java.base/java.lang.Integer.parseInt(Integer.java:652)
at java.base/java.lang.Integer.valueOf(Integer.java:983)
at MinMax.minMax(MinMax.java:27)
at MinMax.main(MinMax.java:14)
这是密码
import java.util.*;
public class MinMax {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("What is the size of the Array");
int sizeN = in.nextInt();
ArrayList<String> myArrayList = new ArrayList<>(sizeN);
for(int i =0; i < sizeN; i++){
System.out.println("What strings would you like to evaluate?");
String str = in.next();
myArrayList.add(str);
}
minMax(sizeN, myArrayList);
}
public static void minMax(int sizeN, ArrayList<String> N){
int[] sumArrayList = new int[sizeN];
String stringInt = "";
int temp = 0;
int max = 0;
int min = 99999;
for(int i = 0; i < sizeN; i++){
for(int j = 0; j<N.get(i).length(); j++){
temp = (int) N.get(i).charAt(j);
stringInt += String.valueOf(temp);
}
sumArrayList[i] = Integer.valueOf(stringInt);
}
for (int j : sumArrayList) {
if (j > max) {
max = j;
}
if (j < min) {
min = j;
}
}
System.out.println("["+min+","+max+"]");
}
}
import java.util.*;
公共类极小值{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
System.out.println(“数组的大小是多少”);
int sizeN=in.nextInt();
ArrayList myArrayList=新的ArrayList(sizeN);
对于(int i=0;i
任何帮助都将不胜感激
74111104110
大于2^32(整数由4字节(4字节*8位=32位)表示)。当您需要大于它的整数时,请使用long(64位)这是因为74111104110超出了整数容量的范围。 整数从-2147483648变为2147483647 你需要把绳子拉长
sumArrayList[I] = Long.parseLong(stringInt);
此外,还需要修改数组和所有变量