小伙伴们好,今天这篇文章主要跟大家介绍在Java中如何向数组添加元素,以及添加元素的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
下面通过实例演示如何使用sort()方法来对Java数组进行一些排序,和使用insertElement ()方法向数组插入一些元素,这里我们定义了一个printArray()方法来帮助打印数组。
演示的MainClass.java 文件:
import java.util.Arrays; public class MainClass { public static void main(String args[]) throws Exception { int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 }; Arrays.sort(array); printArray("数组排序", array); int index = Arrays.binarySearch(array, 1); System.out.println("元素 1 所在位置(负数为不存在):" + index); int newIndex = -index - 1; array = insertElement(array, 1, newIndex); printArray("数组添加元素 1", array); } private static void printArray(String message, int array[]) { System.out.println(message + ": [length: " + array.length + "]"); for (int i = 0; i < array.length; i++) { if (i != 0){ System.out.print(", "); } System.out.print(array[i]); } System.out.println(); } private static int[] insertElement(int original[], int element, int index) { int length = original.length; int destination[] = new int[length + 1]; System.arraycopy(original, 0, destination, 0, index); destination[index] = element; System.arraycopy(original, index, destination, index + 1, length - index); return destination; } }
以上代码运行输出结果为:
数组排序: [length: 10] -9, -7, -3, -2, 0, 2, 4, 5, 6, 8 元素 1 所在位置(负数为不存在):-6 数组添加元素 1: [length: 11] -9, -7, -3, -2, 0, 1, 2, 4, 5, 6, 8
第二个方法就是先把array转化为list,用list的add()方法添加元素,再把list转化为array。
但这儿会有一个陷阱盲区,在把array转化为list的过程中,使用的asList()方法会返回一个final的,固定长度的ArrayList类,并不是java.util.ArrayList,直接这样利用它进行add()或remove()是无效的。
Listlist=new ArrayList(); list=Arrays.asList(sz); list.add(5);
所以在定义list的时候就要对array进行转化,代码如下:
//如 Listlist=new ArrayList(); // list=Arrays.asList(str); //这样不行,须如下: Integer []sz={3,2}; Listlist=new ArrayList(Arrays.asList(sz));//**须定义时就进行转化** list.add(1,5); Integer[] nsz=new Integer[list.size()]; list.toArray(nsz); System.out.println(Arrays.toString(nsz));
结果输出为:[3, 5, 2]
第三个方法:创建一个新数组,新数组的大小为旧数组大小+1,把旧数组里的元素copy一份进新数组,并把要添加的元素添加进新数组即可。
以上就是关于Java向数组中添加元素的几种方法,更多相关内容请持续关注本站。