Java封装数组之添加元素操作实例分析

所属分类: 软件编程 / java 阅读数: 39
收藏 0 赞 0 分享

本文实例讲述了Java封装数组之添加元素操作。分享给大家供大家参考,具体如下:

在上一小节中,我们对数组进行了一个基本的封装,该小节中,我们在上一次基础上,新增往数组添加元素的方法:

1.向所有元素后添加一个元素

思路:

(1)先判断当前数组容量是否已满,未满则转入(2),否则抛出异常

(2)在元素下标为size的位置插入新元素

(3)维护我们的size值

 //向所有元素后添加元素
  public void addLast(int e) {
    if (size == data.length)
      throw new IllegalArgumentException("数组已满");

    data[size] = e;

    size++;
  }

2.在指定index位置插入一个新元素

思路:

(1)先判断当前数组容量是否已满,未满则转入(2),否则抛出异常

(2)判断当前需要插入值的位置是否合理,合理则转入(3),否则抛出位置不合法异常

(3)将index之后的元素依次往后移动一位,然后将新元素插入到index位置

(4)维护我们的size值

 //在第index个位置插入一个新元素
  public void add(int index, int e) {
    //(1)先判断当前数组容量是否已满,未满则转入(2),否则抛出异常
    if (size == data.length)
      throw new IllegalArgumentException("数组已满");

    //(2)判断当前需要插入值的位置是否合理,合理则转入(3),否则抛出位置不合法异常
    if (index < 0 || index > size)
      throw new IllegalArgumentException("您选择的位置不合法");

    //将index位置之后的元素往后依次移动一位
    for (int i = size - 1; i >= index; i--) {
      //(3)将index之后的元素依次往后移动一位,然后将新元素插入到index位置
      data[i + 1] = data[i];
     }
      data[index] = e;
      
      //(4)维护size值
      size++;
  }

通过对在指定index位置插入一个新元素方法的编写,此时我们可以很轻松的编写出在所有元素之前添加一个新元素,

3.在所有元素之前添加一个新元素

 //在所有元素之前添加一个新元素
  public void addFirst(int e) {
    add(0, e);//0表示第一个位置
  }

我们还可以对在本节刚开始编写的第一个方法进行改写,改写如下:

 //向所有元素后添加元素
  public void addLast(int e) {
    add(size, e);//size表示此时的最后一个元素
  }

到此我们对如何在数组中添加一个元素有了基本的认识,在下一节中我们就如何在数组中查询元素和修改元素进行学习。

若你感兴趣,关注我,我们一起学习~~~~

更多关于java相关内容感兴趣的读者可查看本站专题:《Java数组操作技巧总结》、《Java字符与字符串操作技巧总结》、《Java数学运算技巧总结》、《Java数据结构与算法教程》及《Java操作DOM节点技巧总结

希望本文所述对大家java程序设计有所帮助。

更多精彩内容其他人还在看

SpringBoot中使用Ehcache的详细教程

EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的 CacheProvider。这篇文章主要介绍了SpringBoot中使用Ehcache的相关知识,需要的朋友可以参考下
收藏 0 赞 0 分享

在idea 中添加和删除模块Module操作

这篇文章主要介绍了在idea 中添加和删除模块Module操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

java spring整合junit操作(有详细的分析过程)

这篇文章主要介绍了java spring整合junit操作(有详细的分析过程),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解JAVA 弱引用

这篇文章主要介绍了 JAVA 弱引用的相关资料,帮助大家更好的理解和学习java引用对象,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

深入了解JAVA 虚引用

这篇文章主要介绍了JAVA 虚引用的相关资料,帮助大家更好的理解和学习JAVA,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

详解JAVA 强引用

这篇文章主要介绍了JAVA 强引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

java中的按位与(&)用法说明

这篇文章主要介绍了java中的按位与(&)用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

深入了解JAVA 软引用

这篇文章主要介绍了JAVA 软引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

利用MyBatis实现条件查询的方法汇总

这篇文章主要给大家介绍了关于利用MyBatis实现条件查询的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MyBatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.PathTranslator was bound

这篇文章主要介绍了Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.Pa
收藏 0 赞 0 分享
查看更多