- for(int x=0;x<=arr.length;x++){
-
- if(arr[x]==arr[x+1]){
- arr1[x]=arr[x];
- }
- else
- {
- arr1[x]=arr[x];
- arr1[x+1]=arr1[x+1];
-
复制代码
循环过程中,当执行到x=arr1.length的时候,满足条件,然后会arr1.length+1,这时候就会产生越界的情况。
去重的话,你可以参考一下排序的代码,从大到小或者从小到大都可以,- class arrayDemo
- {
- public static void main(String[] args)
- {
- int [] array=new int []{1,2,3,4,5,6,7,8,9,0};
- print(array);
- }
- public static void print(int []array)
- {
- System.out.print("[ ");
- for (int x=0;x<array.length;x++)
- {
- if (x!=array.length-1)
- System.out.print(array[x]+" , ");
- else
- System.out.println(array[x]+" ]");
- }
- }
- }
- 这是数组遍历
复制代码
排序随便给你一个吧:- //冒泡排序
- public static void bubbleSort(int[]arr)
- {
- for (int x=0;x<arr.length ;x++ )
- {
- for (int y=0;y<arr.length-x-1 ;y++ )
- {
- if (arr[y]>arr[y+1])
- {
- swap(arr,y,y+1);
- }
- }
- }
- }
- 冒泡排序
复制代码 |