本文小编为大家详细介绍“Java数组怎么添加元素”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java数组怎么添加元素”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,给数组添加数据。具体代码如下
创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据
@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)); }
运行结果
[aaa, bbb, ccc, ddd]
先把数组转化为list,将该list添加到一个新的ArrayList中,再使用新ArrayList的add()方法添加元素,最后把新ArrayList转化为数组。
@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)); }
也可以简化一下写法:
@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)); }
运行结果
[aaa, ddd, bbb, ccc]
注意点:
使用Arrays.asList()方法将数组转为list时,该方法返回的是一个final的,固定长度的ArrayList类,他是Arrays的内部类,并不是java.util.ArrayList,所以不能直接使用它进行add操作哦,否则会报如下错误哦
异常信息:
java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:148)
读到这里,这篇“Java数组怎么添加元素”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。