美文网首页
数组中插入数据的方法

数组中插入数据的方法

作者: 李诗莹__三月 | 来源:发表于2019-11-11 09:04 被阅读0次

    题目:

    编写一个Java程序,将元素(特定位置)插入或删除到数组中:该程序有两个方法insert和delete这些方法属于类FirstClass。

    数组中的插入方法

    /**
    给数组指定位置数组的插入
    */
    import java.util.*;
    public class ArrayInsert{
        public static void main(String []args){
            System.out.println("请用键盘输入5个数:");
            int [] array =new int[10];
            Scanner sc=new Scanner(System.in);
    
            //通过键盘向数组输入数
            for(int i=0;i<array.length-5;i++){
                array[i]=sc.nextInt();
            }
            //遍历数组
            System.out.print("原数组为:");
            for(int a:array){
                System.out.print("  "+a);
            }
            //向指定的位置插入数
            System.out.println("\n请输入插入位置:有效位置为0-----"+(array.length-1));
            int index=sc.nextInt();
            System.out.println("\n请输入插入的值-----");
            int num=sc.nextInt();
    
    
            //调用静态函数index
            //遍历插入后的数组
                System.out.println("插入元素之后的数组遍历:");
                Insert(index,num,array);
                 for(int i=0;i<array.length;i++){
                System.out.print("  "+array[i]);
            }
    
        }
        //向数组指定位置插入数据方法
        public static int[] Insert(int index,int num,int a[]){
                //如果有元素,在索引之后的元素向后移一位,
                for(int   a[i]=a[i-1];
                }
                a[index]=num;
     return a;      
        }
    }
    

    数组中删除的方法

    //删除数组指定位置的数字。
    import java.util.*;
    public class ArrayDelete{
        public static void main(String args[]){
            System.out.println("请用键盘输入5个数:");
            int [] array =new int[10];
            Scanner sc=new Scanner(System.in);
    
            //通过键盘向数组输入数
            for(int i=0;i<array.length-5;i++){
                array[i]=sc.nextInt();
            }
            //遍历数组
            System.out.print("原数组为:");
            for(int a:array){
                System.out.print("  "+a);
            }
            //删除在指定位置的数字
            System.out.println("\n输入你要删除的位置: 范围在0---"+(array.length-1));
            int index=sc.nextInt();
            delete(index,array);//调用delete方法
            //删除之后的遍历
            System.out.println("删除之后的遍历:");
            for(int i=0;i<array.length;i++){
                System.out.print("  "+array[i]);
            }
        }
         //数组的特性是,一旦初始化,则长度确定,所以要删除数组中元素,并且长度也随着删除而改变,则要重新建立数组
         /**
    *删除方式1
    */
        public int[] delete(int index, int array[]) {
            //数组的删除其实就是覆盖前一位
            int[] arrNew = new int[array.length - 1];
            for (int i = index; i < array.length - 1; i++) {
                array[i] = array[i + 1];
            }
            System.arraycopy(array, 0, arrNew, 0, arrNew.length);
            return arrNew;
        }
    /**
    *删除方式2
    */
        public int[] delete2(int index, int array[]) {
            //数组的删除其实就是覆盖前一位
            int[] arrNew = new int[array.length - 1];
            for (int i = 0; i < array.length - 1; i++) {
                if (i < index) {
                    arrNew[i] = array[i];
                } else {
                    arrNew[i] = array[i + 1];
                }
            }
            return arrNew;
        }
    
    }
    

    相关文章

      网友评论

          本文标题:数组中插入数据的方法

          本文链接:https://www.haomeiwen.com/subject/frvzbctx.html