全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java中删除 数组中的指定元素方法

java中删除 数组中的指定元素要如何来实现呢,如果各位对于这个算法不是很清楚可以和小编一起来看一篇关于java中删除 数组中的指定元素的例子。

java的api中,并没有提供删除数组中元素的方法。虽然数组是一个对象,不过并没有提供add()、remove()或查找元素的方法。这就是为什么类似ArrayList和HashSet受欢迎的原因。

不过,我们要感谢Apache Commons Utils,我们可以使用这个库的ArrayUtils类来轻易的删除数组中的元素。不过有一点需要注意,数组是在大小是固定的,这意味这我们删除元素后,并不会减少数组的大小。

所以,我们只能创建一个新的数组,然后使用System.arrayCopy()方法将剩下的元素拷贝到新的数组中。对于对象数组,我们还可以将数组转化为List,然后使用List提供的方法来删除对象,然后再将List转换为数组。

为了避免麻烦,我们使用第二种方法:

我们使用Apache commons库中的ArrayUtils类根据索引来删除我们指定的元素。

Apache commons lang3下载地址:
http://commons.apache.org/proper/commons-lang/download_lang.cgi

下载好后,导入jar。

import java.util.Arrays;
import org.apache.commons.lang3.ArrayUtils;
/**
 *
 * Java program to show how to remove element from Array in Java
 * This program shows How to use Apache Commons ArrayUtils to delete
 * elements from primitive array.
 *
 */
public class RemoveObjectFromArray{
  public static void main(String args[]) {
         
    //let's create an array for demonstration purpose
    int[] test = new int[] { 101, 102, 103, 104, 105};
   
    System.out.println("Original Array : size : " test.length );
    System.out.println("Contents : " Arrays.toString(test));
   
    //let's remove or delete an element from Array using Apache Commons ArrayUtils
    test = ArrayUtils.remove(test, 2); //removing element at index 2
   
    //Size of array must be 1 less than original array after deleting an element
    System.out.println("Size of array after removing an element : " test.length);
    System.out.println("Content of Array after removing an object : "
              Arrays.toString(test));
   
  }
 
}
Output:
Original Array : size : 5
Contents : [101, 102, 103, 104, 105]
Size of array after removing an element : 4
Content of Array after removing an object : [101, 102, 104, 105]

当然,我们还有其他的方法,不过使用已经的库或java api来实现,更快速。

我们来看下ArrayUtils.remove(int[] array, int index)

方法源代码:

 public static int[] remove(int[] array, int index) {
    return (int[])((int[])remove((Object)array, index));
  }

在跳转到remove((Object)array, index)) ,源代码:

private static Object remove(Object array, int index) {
    int length = getLength(array);
    if(index >= 0 && index < length) {
      Object result = Array.newInstance(array.getClass().getComponentType(), length - 1);
      System.arraycopy(array, 0, result, 0, index);
      if(index < length - 1) {
        System.arraycopy(array, index 1, result, index, length - index - 1);
      }
      return result;
    } else {
      throw new IndexOutOfBoundsException("Index: " index ", Length: " length);
    }
  }

这下明白了ArrayUtils的删除数组中元素的原理了吧。其实还是要用到两个数组,然后利用System.arraycopy()方法,将除了要删除的元素外的其他元素都拷贝到新的数组中,然后返回这个新的数组。

以上就是小编为大家带来的java中删除 数组中的指定元素方法全部内容了,希望大家多多支持~


# 删除数组中指定元素  # Java数组去重复的18种方法示例  # Java数组的去重  # JavaScrip数组去重操作实例小结  # Java实现的数组去重与排序操作详解  # java正则表达式实现提取需要的字符并放入数组【ArrayList数组去重复功能】  # JavaScrip数组删除特定元素的几种方法总结  # Java对int[]数组做新增删除去重操作代码  # 组中  # 来实现  # 小编  # 源代码  # 到新  # 是一个  # 是在  # 还可以  # 下载地址  # 这就是  # 其他的  # 我们可以  # 要用  # 这下  # 受欢迎  # 很清楚  # 种方法  # 转化为  # 转换为  # 方法来 


相关文章: 建站为何优先选择香港服务器?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  如何通过万网虚拟主机快速搭建网站?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  如何构建满足综合性能需求的优质建站方案?  如何在搬瓦工VPS快速搭建网站?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  如何通过cPanel快速搭建网站?  建站主机选购指南:核心配置优化与品牌推荐方案  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  济南企业网站制作公司,济南社保单位网上缴费步骤?  C#怎么创建控制台应用 C# Console App项目创建方法  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  文字头像制作网站推荐软件,醒图能自动配文字吗?  招贴海报怎么做,什么是海报招贴?  建站之星如何配置系统实现高效建站?  官网网站制作腾讯审核要多久,联想路由器newifi官网  高防服务器租用指南:配置选择与快速部署攻略  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  如何通过可视化优化提升建站效果?  建站上市公司网站建设方案与SEO优化服务定制指南  东莞专业制作网站的公司,东莞大学生网的网址是什么?  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  如何在腾讯云服务器快速搭建个人网站?  成都网站制作报价公司,成都工业用气开户费用?  建站之星如何开启自定义404页面避免用户流失?  网站制作软件有哪些,制图软件有哪些?  如何彻底删除建站之星生成的Banner?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  建站之星后台管理:高效配置与模板优化提升用户体验  如何获取开源自助建站系统免费下载链接?  高端建站三要素:定制模板、企业官网与响应式设计优化  如何快速搭建个人网站并优化SEO?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  无锡营销型网站制作公司,无锡网选车牌流程?  相册网站制作软件,图片上的网址怎么复制?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  网页设计与网站制作内容,怎样注册网站?  大连 网站制作,大连天途有线官网?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何设计高效校园网站?  php json中文编码为null的解决办法  临沂网站制作企业,临沂第三中学官方网站?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  建站之星如何实现PC+手机+微信网站五合一建站?  制作门户网站的参考文献在哪,小说网站怎么建立?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。