本文目錄一覽:
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(“[\\[\\],]”,””));
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/194785.html