服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java数组添加元素的两种方法

Java数组添加元素的两种方法

2023-04-26 16:29飞翔的佩奇 Java教程

这篇文章主要介绍了Java数组添加元素的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友跟着小编来一起学习学习吧

说在前面

数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,给数组添加数据。具体代码如下

方式一:

创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据

?
1
2
3
4
5
6
7
8
9
10
@Test
public void redd111(){
    String[] s1 = {"aaa","bbb","ccc"};
    String[] s2 = new String[s1.length+1];
    for (int i = 0; i < s1.length; i++) {
        s2[i] = s1[i];
    }
    s2[s1.length] = "ddd";
    System.out.println(Arrays.toString(s2));
}

运行结果

?
1
[aaa, bbb, ccc, ddd]

方式二:

先把数组转化为list,将该list添加到一个新的ArrayList中,再使用新ArrayList的add()方法添加元素,最后把新ArrayList转化为数组。

?
1
2
3
4
5
6
7
8
9
10
11
@Test
public void redd222(){
    String[] s1 = {"aaa","bbb","ccc"};
    List<String> tempList = Arrays.asList(s1);
    List<String> list = new ArrayList<>();
    list.addAll(tempList);
    list.add(1,"ddd");
    String[] s2 = new String[list.size()];
    list.toArray(s2);
    System.out.println(Arrays.toString(s2));
}

也可以简化一下写法:

?
1
2
3
4
5
6
7
8
9
@Test
public void redd222(){
    String[] s1 = {"aaa","bbb","ccc"};
    List<String> list = new ArrayList<>(Arrays.asList(s1));
    list.add(1,"ddd");
    String[] s2 = new String[list.size()];
    list.toArray(s2);
    System.out.println(Arrays.toString(s2));
}

运行结果

?
1
[aaa, ddd, bbb, ccc]

注意点:

使用Arrays.asList()方法将数组转为list时,该方法返回的是一个final的,固定长度的ArrayList类,他是Arrays的内部类,并不是java.util.ArrayList,所以不能直接使用它进行add操作哦,否则会报如下错误哦

异常信息:

?
1
2
java.lang.UnsupportedOperationException
    at java.util.AbstractList.add(AbstractList.java:148)

到此这篇关于Java数组添加元素的两种方法的文章就介绍到这了,更多相关Java数组添加元素内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_43860634/article/details/129750794

延伸 · 阅读

精彩推荐