您的位置:首页 > 其它

在数组中指定位置添加和删除元素

2017-07-17 21:42 447 查看
public class ArrayDemo {

      public static void main(String[] args) {

         

     int[] arr={2,3,5,12,34,56,23,11};

     System.out.print("删除元素后的数组排序:");

     delete(arr,3);
 

     System.out.println();

     System.out.print("数组中最后位置添加元素后的数组排序:");

     addValue(arr,7);  

     System.out.println();

     System.out.print("数组中指定位置添加元素后的数组排序:"); 

     addValue(arr,8,2);

     System.out.println();

   
}

      /**

       * 删除指定位置的元素

       * @param arr

       * @param index

       */

      public static void delete(int[] arr, int index){

      int[] arr2=new int[arr.length-1];

       if(index<0||index>arr2.length-1){

       
System.out.println("数组下标越界");

       }else{

       
for(int i=0;i<arr2.length;i++){

           
if(i<index){

           
arr2[i]=arr[i];

           
}

           
if(i==index){

           
continue;

           
}

           
if(i>index){

           
arr2[index]=arr[index+1];

           
arr2[i]=arr[i+1];

           
}  

            }

       }

       

        for(int j=0;j<arr2.length;j++){
    System.out.print(arr2[j]+" ");
    }

      

      }

      /**

       * 在数组末尾添加元素

       * @param arr

       * @param value

       * @return

       */

        public static int[] addValue(int[] arr,int value){

         int[] arr3=new int[arr.length+1];

         arr3[arr.length]=value;

         for(int i=0;i<arr.length;i++){

       
 arr3[i]=arr[i];

         }

         for(int j=0;j<arr3.length;j++){

       
 System.out.print(arr3[j]+" ");

         }

     
  return arr;
}

      

      /**

       * 在数组指定位置添加元素

       * @param arr

       * @param value

       * @param index

       * @return

       */

      public static int[] addValue(int[] arr,int value,int index){

     int[] arr4=new int[arr.length+1];

     if(index<0||index>arr4.length-1){

     System.out.println("数组下标越界!");

     }else{

     for(int i=0;i<arr.length;i++){

         if(index>i){

         arr4[i]=arr[i];

         }

         if(index==i){

         arr4[index]=value;  

         }

         if(index<i){

         arr4[index+1]=arr[index];

         arr4[i+1]=arr[i];

         }

         }  

     }

     

     for(int j=0;j<arr4.length;j++){

     System.out.print(arr4[j]+" ");

     }

   
return arr;

  }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: