如何在Java中将元素添加到数组中?
给定一个大小为 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() 方法用原始数组创建一个 ArrayList。
- 只需使用 add() 方法在列表中添加所需的元素
- 使用 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
arrlist = new ArrayList ( 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]