【发布时间】:2013-06-04 17:10:31
【问题描述】:
这是我的第二个 Java 程序,也是我第一次使用 arrayList。 我搜索了如何转换它,并使用了我找到的方法,但是我得到了一个错误...
package eliminarepetidos;
import java.util.ArrayList;
import java.util.Random;
public class Eliminarepetidos {
public static ArrayList<Integer> eliminaRepetidos (int[] vet){
ArrayList<Integer> retorna = new ArrayList<>();
for(int i = 0; i<vet.length; i++){
for (int j = i + 1; j < vet.length; j++)
if ((vet[i] == vet[j])&&(vet[i]!=0)) vet[j]=0;
if(vet[i]!=0) retorna.add(vet[i]); }
return retorna;
}
public static void imprime (int[] vet, int numElem){
System.out.print("Vetor resultante:");
for (int i = 0;i<numElem;i++)
System.out.print(" " +vet[i]);
}
public static void main(String[] args) {
int[] t;
t = new int[10];
Random generator = new Random();
for(int i = 0; i<10; i++)
t[i] = generator.nextInt(12) +9;
ArrayList<Integer> temporario = new ArrayList<>();
temporario = eliminaRepetidos(t);
int [] vetfinal = temporario.toArray(new int[temporario.size()]); //line with error
imprime(vetfinal,vetfinal.length);
}
}
我应该如何使用该命令使其正常工作? 谢谢!
【问题讨论】:
-
你遇到了什么错误?
-
问题是你有一个整数数组列表并尝试创建一个整数数组(基元)。你可以在这里找到类似的问题,例如stackoverflow.com/questions/718554/…
-
谢谢,@MateuszDymczyk!我用你的链接解决了我的问题。我不知道如何评价你的评论是否有用,否则我早就这么做了!
-
@LucasTiago:我没有回答你的问题,因为我将它标记为重复,希望有人会投票关闭它。没有冒犯,但我喜欢我的 SO 没有冗余 :-)
-
@MateuszDymczyk 没问题,今天开始使用 SO!不便之处请见谅=X