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

从 int 数组中删除重复元素

从 int 数组中删除重复元素

森栏 2023-08-09 15:29:37
我试图通过以下代码从该数组中删除重复元素,它给了我这个错误:线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException:索引 13 超出 pro2.Main.main(Main.java:36) 长度 13 的范围代码 :public static void main(String[] args) {    int[] x = { 2, 2, 3, 5, 6, 3, 5, 6, 7, 8, 9, 1, 7 };    Integer[] o = new Integer[x.length];    for (int i = 0; i < x.length; i++) {         o[i] = Integer.valueOf(x[i]);    }    for (int i = 0; i < x.length; i++) {        for (int j = i + 1; i < x.length; j++) {            if (o[i] == o[j]) {                o[j] = null;             }          }    }    for (int i = 0; i < x.length; i++) {             if(o[i]!=null)          System.out.print(o[i]);       }}
查看完整描述

1 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

你这里有一个错字:

        for(int j = i+1 ; i<x.length ; j++) {
                          ^ this should be j

当前(错误的)循环直到运行到数组末尾才停止。因此,您试图获取 x[12+1] 的值,即 x[13],超出数组范围。


查看完整回答
反对 回复 2023-08-09
  • 1 回答
  • 0 关注
  • 99 浏览

添加回答

举报

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