给定大小为n的数组, 任务是在Java中的此数组中添加元素x。
数组的大小无法在Java中动态更改, 就像在C / C ++中那样。因此, 为了在数组中添加元素, 可以执行以下方法之一:
通过创建一个新数组:
- 创建一个大小为n + 1的新数组, 其中n是原始数组的大小。
- 在此数组中添加原始数组的n个元素。
- 在第n + 1个位置添加新元素。
- 打印新数组。
下面是上述方法的实现:
// Java Program to add an element in an Array
import java.io.*;
import java.lang.*;
import java.util.*;
class GFG {
// Function to add x in arr
public static int [] addX( int n, int arr[], int x)
{
int i;
// create a new array of size n+1
int newarr[] = new int [n + 1 ];
// insert the elements from
// the old array into the new array
// insert all elements till n
// then insert x at n+1
for (i = 0 ; i < n; i++)
newarr[i] = arr[i];
newarr[n] = x;
return newarr;
}
// Driver code
public static void main(String[] args)
{
int n = 10 ;
int i;
// initial array of size 10
int arr[]
= { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 };
// print the original array
System.out.println( "Initial Array:\n"
+ Arrays.toString(arr));
// element to be added
int x = 50 ;
// call the method to add x in arr
arr = addX(n, arr, x);
// print the updated array
System.out.println( "\nArray with " + x
+ " added:\n"
+ Arrays.toString(arr));
}
}
输出如下:
Initial Array:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Array with 50 added:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 50]
通过使用ArrayList作为中间存储:
- 创建一个数组列表与原始数组一起使用asList()方法。
- 只需使用以下命令将所需元素添加到列表中加()方法
- 使用以下方法将列表转换为数组toArray()方法
// Java Program to add an element in an Array
import java.io.*;
import java.lang.*;
import java.util.*;
class GFG {
// Function to add x in arr
public static Integer[] addX( int n, Integer arr[], int x)
{
int i;
// create a new ArrayList
List<Integer> arrlist
= new ArrayList<Integer>(
Arrays.asList(arr));
// Add the new element
arrlist.add(x);
// Convert the Arraylist to array
arr = arrlist.toArray(arr);
// return the array
return arr;
}
// Driver code
public static void main(String[] args)
{
int n = 10 ;
int i;
// initial array of size 10
Integer arr[]
= { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 };
// print the original array
System.out.println( "Initial Array:\n"
+ Arrays.toString(arr));
// element to be added
int x = 50 ;
// call the method to add x in arr
arr = addX(n, arr, x);
// print the updated array
System.out.println( "\nArray with " + x
+ " added:\n"
+ Arrays.toString(arr));
}
}
输出如下:
Initial Array:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Array with 50 added:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 50]