Java实现向数组里添加元素

 更新时间:2023年11月06日 09:04:40   作者:zhangvalue  
这篇文章主要介绍了Java实现向数组里添加元素方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Java向数组里添加元素

向数组里添加一个元素怎么添加,一般数组是不能添加元素的,因为数组在初始化时就已定好长度了,不能改变长度。

比如:

        String[] str = new String[5];
        System.out.println(Arrays.toString(str));
        String[] str2 = new String[]{"a", "b"};
        System.out.println(Arrays.toString(str2));
        String[] str3 = {"c", "d"};
        System.out.println(Arrays.toString(str3));

第一种方法

思路为创建一个新数组,新数组的大小为旧数组大小+1,把旧数组里的元素copy一份进新数组,并把要添加的元素添加进新数组即可。

        String[] datecolumn = {"Mon", "Tue", "Wed"};
        /**
         * 重新创建一个新的数组,需要添加多少个元素,就在原来的数组长度的基础上加几
         */
        System.out.println(datecolumn.length);
        String[] newColume = new String[datecolumn.length + 1];
        for (int i = 0; i < datecolumn.length; i++) {
            newColume[i]=datecolumn[i];
        }
        newColume[datecolumn.length]="Thu";
        System.out.println(Arrays.toString(newColume));

第二种方法

可以改变大小的数组为ArrayList,即可以定义一个ArrayList数组,然后用add(element)方法往里添加元素即可,还可add(index,element)往指定下标处添加元素;

        List<String> datelist = new ArrayList<String>();
        datelist.add("Mon");
        datelist.add("Tue");
        datelist.add("Wed");
        //因为数组下标是从0开始,这里add的index为2即为第三个元素
        datelist.add(2, "Thu");
        datelist.add(1, "Fri");
        System.out.println(datelist);

Web值对应的index就成了3

第三种方法

思路为先把array转化为list,用list的add()方法添加元素,再把list转化为array。

但这儿会有一个陷阱盲区,在把array转化为list的过程中,使用的asList()方法会返回一个final的,固定长度的ArrayList类,并不是java.util.ArrayList,直接这样利用它进行add()或remove()是无效的。

        //1.已有的数组datecolumn和list集合
        String[] datecolumn = {"Mon", "Tue", "Wed"};
        List<String> list = new ArrayList<>();
        list.add("Thu");
        list.add("Fri");
        list.add("Sat");
        list.add("Sun");

        //2.数组和集合add到titleList中
        List<String> titleList = new ArrayList<String>();
        //将datecolum数组转换list并add到titleList中
        titleList.addAll(Arrays.asList(datecolumn));
        //将list添加到titleList中
        titleList.addAll(list);

        //3.titleList集合转换title数组
        String[] title = titleList.toArray(new String[titleList.size()]);
        //4.遍历title数组
        for (String string : title) {
            System.out.println(string);
        }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring Boot security 默认拦截静态资源的解决方法

    Spring Boot security 默认拦截静态资源的解决方法

    这篇文章主要介绍了Spring Boot security 默认拦截静态资源,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 如何通过Java实现时间轴过程解析

    如何通过Java实现时间轴过程解析

    这篇文章主要介绍了如何通过Java实现时间轴过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • RocketMQ之Consumer整体介绍启动源码分析

    RocketMQ之Consumer整体介绍启动源码分析

    这篇文章主要为大家介绍了RocketMQ源码分析之Consumer整体介绍启动分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • mybatis-sqlserver批量新增返回id方式

    mybatis-sqlserver批量新增返回id方式

    这篇文章主要介绍了mybatis-sqlserver批量新增返回id方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Java微信公众号安全模式消息解密

    Java微信公众号安全模式消息解密

    这篇文章主要为大家详细介绍了Java微信公众号安全模式消息解密,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • 详解HTTP请求与响应基础及实例

    详解HTTP请求与响应基础及实例

    这篇文章主要介绍了详解HTTP请求与响应基础及实例的相关资料,这里对http的请求和响应进行详细分析并附有实现实例,需要的朋友可以参考下
    2017-07-07
  • SpringMVC使用@Valid注解实现数据验证的代码示例

    SpringMVC使用@Valid注解实现数据验证的代码示例

    在 Web 开发中,数据验证是一个非常重要的环节,它可以确保数据的合法性和正确性,保护系统不受到恶意攻击或用户误操作的影响,在 SpringMVC 中,我们可以使用 @Valid 注解来实现数据验证,所以本文就给大家介绍具体的使用方法,需要的朋友可以参考下
    2023-07-07
  • Spring AOP使用之多切面运行顺序

    Spring AOP使用之多切面运行顺序

    这篇文章主要介绍了Spring AOP使用之多切面运行顺序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • Springboot中实现策略模式+工厂模式的方法

    Springboot中实现策略模式+工厂模式的方法

    这篇文章主要介绍了Springboot中实现策略模式+工厂模式,具体策略模式和工厂模式的UML我就不给出来了,使用这个这两个模式主要是防止程序中出现大量的IF ELSE IF ELSE....,接下来咱们直接实现Springboot策略模式工厂模式
    2022-03-03
  • 为什么Java中只有值传递

    为什么Java中只有值传递

    这篇文章主要介绍了为什么Java中只有值传递,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2021-01-01

最新评论