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

 更新时间:2023年04月25日 14:02:27   作者:飞翔的佩奇  
这篇文章主要介绍了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数组添加元素的两种方法的文章就介绍到这了,更多相关Java数组添加元素内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java四个线程常用函数超全使用详解

    Java四个线程常用函数超全使用详解

    这篇文章主要为大家介绍了线程中常用的四个函数:wait()、join()、sleep() 和 yield(),以及这四个函数的使用方法和相互之间的区别,需要的可以参考一下
    2022-03-03
  • java Runnable接口创建线程

    java Runnable接口创建线程

    这篇文章主要介绍了java Runnable接口创建线程的相关资料,需要的朋友可以参考下
    2017-07-07
  • JAVA基础之继承(inheritance)详解

    JAVA基础之继承(inheritance)详解

    继承(inheritance)是Java OOP中一个非常重要的概念。这篇文章主要介绍了JAVA基础之继承(inheritance),需要的朋友可以参考下
    2017-03-03
  • 使用javaweb项目对数据库增、删、改、查操作的实现方法

    使用javaweb项目对数据库增、删、改、查操作的实现方法

    这篇文章主要给大家介绍了关于使用javaweb项目对数据库增、删、改、查操作的实现方法,avaWeb是指使用Java语言进行Web应用程序开发的技术,可以利用Java编写一些动态网页、交互式网页、企业级应用程序等,需要的朋友可以参考下
    2023-07-07
  • Ubuntu快速安装eclipse

    Ubuntu快速安装eclipse

    这篇文章主要为大家详细介绍了Ubuntu快速安装eclipse的简单教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Java实现的双向匹配分词算法示例

    Java实现的双向匹配分词算法示例

    这篇文章主要介绍了Java实现的双向匹配分词算法,结合完整实例形式详细分析了双向匹配分词算法的原理与java实现技巧,需要的朋友可以参考下
    2017-12-12
  • springboot:接收date类型的参数方式

    springboot:接收date类型的参数方式

    这篇文章主要介绍了springboot:接收date类型的参数方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 学习java多线程

    学习java多线程

    本文运用了大量的代码讲解了java多线程,它可以提高程序并行执行的速度,更快的响应程序。感兴趣的小伙伴一起来看看吧
    2021-08-08
  • springcloud项目改名的操作方法

    springcloud项目改名的操作方法

    这篇文章主要介绍了springcloud项目改名的操作方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Java util.List如何实现列表分段处理

    Java util.List如何实现列表分段处理

    这篇文章主要介绍了Java util.List如何实现列表分段处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09

最新评论