您的位置:

java数组插入,Java添加数组

本文目录一览:

java中如何插入数组

按照你的要求编写的Java程序如下(用array3做临时数组,组合完再拷贝回数组2)

public class GGG {

 public static void main(String[] args) {

  int[] array1={1,2,3,4,5,6,7,8,9};

      int[] array2={10,20,30,40,50};

      int[] array3=new int[array1.length+array2.length];

       System.arraycopy(array2, 0, array3, 0, 2);

      System.arraycopy(array1, 0, array3, 2, array1.length);

      System.arraycopy(array2, 2, array3, 2+array1.length, 3);

      array2=new int[array3.length];

      System.arraycopy(array3, 0, array2, 0, array3.length);

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

       System.out.print(array2[i]+" ");

      }

 }

}

运行结果

10 20 1 2 3 4 5 6 7 8 9 30 40 50

java数组如何进行插入删除(很菜的问题)

java数组插入实现思路:

可以把某个整数插入到整型数组的特定位置,数组中原有元素向后移动

删除方法:能够从整形数组中特定位置删除掉一个元素,数组中原有元素向前移动

程序代码:

InsertDelete.java:

package p1;

import com.kettas.common.*;

import java.util.*;

public class InsertDelete

{

 static int[] a={4,2,7,3,5};//初始数组

 static int sum=5;//数组的有效位数

 public static void main(String[] args)

 {  

  System.out.println("初始数组为:");

  output();

  while(true)

  {

    System.out.println("操作:1:插入;2:删除;3:退出");

    int option=SystemIn.readInt();

    if(option==1)

    {

       System.out.println("请输入插入的位置:");

       int pos=SystemIn.readInt();

       System.out.println("请输入要插入的数:");

       int num=SystemIn.readInt();

       add(pos,num);

       System.out.println("插入后的数组为:");

       output();

    }

    else if(option==2)

    {

       System.out.println("请输入要删除的数的位置:");

       int pos1=SystemIn.readInt();

       move(pos1);

       System.out.println("删除后的数组为:");

       output();

    }

    else 

       break;

   }

  }

static void add(int pos,int num)

 {  //将num插入到数组的第pos下标中,其他元素向后移动

  if(sum == a.length)

  {     // 扩充数组空间

   a=Arrays.copyOf(a,a.length*2); 

  }

  for(int i=sum;ipos;i--)

  {

   a[i]=a[i-1]; 

  }

  a[pos]=num;

  sum++;  //有效位数加1

 }

 

 static void move(int pos)

 {  //删除数组中下标为pos的元素

  sum--;  //有效位数减1

  for(int i=pos;isum;i++) 

  {

   a[i]=a[i+1];

  }  

 }

 

 static void output()

 {   // 遍历输出数组中的元素

  for(int i=0;isum;i++)

  {

   System.out.print(a[i]+" ");

  }

  System.out.println();

 }

}

测试结果:

java数组插入数组

import java.util.*;

class Tester{

    public static void main (String[] args) {

        char[] cs = {'a','b','c','e','f','p','u','z'};

        System.out.format("插入前的序列是:%s%n", Arrays.toString(cs).replaceAll("[\\[\\],]",""));

        Scanner sc = new Scanner(System.in);

        System.out.print("待插入的字符是:");

        String m = sc.next();

        System.out.println(m);

        System.out.print("插入字符的下标是:");

        int index = sc.nextInt();

        System.out.println(index);

        sc.close();

        char[] dest = new char[cs.length+1];

        System.arraycopy(cs,0,dest,0,index);

        dest[index] = m.charAt(0);

        System.arraycopy(cs,index,dest,index+1,dest.length-index-1);

        cs = dest;

        System.out.format("插入后的字符序列是:%s", Arrays.toString(cs).replaceAll("[\\[\\],]",""));

    }

}