Java 类强制转换异常
我写了一个有一些铸造错误的方法:Java 类强制转换异常,java,exception-handling,Java,Exception Handling,我写了一个有一些铸造错误的方法: public class Factor { public static int[] findFactors(ArrayList<Integer> nums){ ArrayList<Integer> factors= new ArrayList(); for(Integer i=new Integer(0);i<nums.size();i++) { System.ou
public class Factor {
public static int[] findFactors(ArrayList<Integer> nums){
ArrayList<Integer> factors= new ArrayList();
for(Integer i=new Integer(0);i<nums.size();i++) {
System.out.println(nums.get(i));
for(int j=0;j<nums.get(i);j++) {
if (nums.get(i) %j==0) {
factors.add(j);
}
}
}
int ct=0;
String factorString= factors.toString();
char[] charArray= factorString.toCharArray();
int[] factorArray= new int[(charArray.length+1)/2];
for(int a=0;a<charArray.length;a++) {
if(charArray[a]==',') {
continue;
} else {
String s= Character.toString(charArray[a]);
factorArray[ct]=Integer.parseInt(s);
ct++;
}
}
return factorArray;
}
}
如果有任何帮助,我们将不胜感激。您遇到的问题是,您只能逃避,但当您在列表中使用toString时,它会被括在方括号[]中。当您修复该问题时,您将发现结果数组的大小无效,您还必须减去括号中的2
祝你休息愉快。请阅读一些关于Java的基本手册 你是说异常处理?@user1843145。。是 啊发布您得到的异常的堆栈跟踪。这是我的错误:[我不能转换为java.lang.IntegerSomeone应该为其中一种笑话语言制作一个编译器,当它发现语法错误时,它只是说你的代码不会work@user1843145也许int和integer不是一回事?我曾经在arrayNope上使用toString.toString;,如果你在array上使用,那么你会有内存地址。你会不要试图转义,哦,toString方法有两种用法,但是异常是这样的:'exception in thread main java.lang.ClassCastException:[我不能转换为java.lang.Integer'