Java中ArrayList的使用方法简单介绍
ArrayList没有封装好的去重方法,比如对于一个[2, 5, 2, 3, 2, 4]的ArrayList,我要去除其中的重复的元素,
我也不想把语句也这么长,也不想用for循环的方法去重,那么可以先考虑把ArrayList转化为一个临时的HashSet,再把这个临时的HashSet转化回ArrayList,因为HashSet里面的元素是不可重复的嘛!至于什么是ArrayList与HashSet,在《详解java中的Collections类》已经说得很清楚了,这里不再赘述。
你可以这样写:
HashSet<Integer> hashset_temp = new HashSet<Integer>(arraylist);
arraylist = new ArrayList<Integer>(hashset_temp);
也可以写得更加简洁,连那个临时的hashset_temp变量都不要了:
arraylist = new ArrayList<Integer>(new HashSet<Integer>(arraylist));
之后,ArrayList的元素变为[2, 3, 4, 5]
下面再为大家分享ArrayList去重的两种方法
//去重复方法一
private ArrayList RemoveDuplicateNum(ArrayList list) { list.Sort(); for (int i = 0; i < list.Count - 1; i++) { if (list[i].Equals(list[i + 1])) { list.RemoveAt(i);//去重复项 i--; } } return list; }
//去重复方法二
private ArrayList RemoveSame(ArrayList list) { //上面写的那句是多余的,这个是最终的 for (int i = 0; i < list.Count - 1; i++) { for (int j = i + 1; j < list.Count; j++) { if (list[i].Equals(list[j])) { list.RemoveAt(j); j--; } } } return list; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Java中对List集合的常用操作详解
目录: 1.list中添加,获取,删除元素: 2.list中是否包含某个元素: 3.list中根据索引将元素数值改变(替换): 4.list中查看(判断)元素的索引: 5.根据元素索引位置进行的判断: 6.利用list中索引位置重新生成一个新的list(截取集合): 7.对比两个list中的所有元素: 8.判断list是否为空: 9.返回Iterator集合对象: 10.将集合转换为字符串: 11.将集合转换为数组: 12.集合类型转换: 备注:内容中代码具有关联性. 1.list中添加,获取,
-
Java中的Set、List、Map的用法与区别介绍
Collection 接口 :Collection是最基本的集合接口,声明了适用于JAVA集合(只包括Set和List)的通用方法.Set和List都继承了Conllection,Map Collection接口的方法: boolean add(Object o):向集合中加入一个对象的引用 void clear():删除集合中所有的对象,即不再持有这些对象的引用 boolean isEmpty():判断集合是否为空 boolean contains(Object o):判断集合中是否持有特定对
-
Java中List的使用方法简单介绍
Java中的List就是一种集合对象,将所有的对象集中到一起存储.List里面可以放任意的java对象,也可以直接放值. 使用方法很简单,类似于数组. 使用List之前必须在程序头引入java.util.* import java.util.*; public class list { public static void main(String args[]) { List a=new ArrayList(); a.add(1);//在LIST a中添加1 System.out.println
-
多用多学之Java中的Set,List,Map详解
很长时间以来一直代码中用的比较多的数据列表主要是List,而且都是ArrayList,感觉有这个玩意就够了.ArrayList是用于实现动态数组的包装工具类,这样写代码的时候就可以拉进拉出,迭代遍历,蛮方便的. 也不知道从什么时候开始慢慢的代码中就经常会出现HashMap和HashSet之类的工具类.应该说HashMap比较多一些,而且还是面试经典题,平时也会多看看.开始用的时候简单理解就是个键值对应表,使用键来找数据比较方便.随后深入了解后发现 这玩意还有点小奥秘,特别是新版本的JDK对Has
-
浅谈java中对集合对象list的几种循环访问
java中对集合对象list的几种循环访问的总结如下 1 经典的for循环 public static void main(String[] args) { List<String> list = new ArrayList(); list.add("123"); list.add("java"); list.add("j2ee"); System.out.println("=========经典的for循环=======
-
Java中ArrayList的使用方法简单介绍
ArrayList没有封装好的去重方法,比如对于一个[2, 5, 2, 3, 2, 4]的ArrayList,我要去除其中的重复的元素, 我也不想把语句也这么长,也不想用for循环的方法去重,那么可以先考虑把ArrayList转化为一个临时的HashSet,再把这个临时的HashSet转化回ArrayList,因为HashSet里面的元素是不可重复的嘛!至于什么是ArrayList与HashSet,在<详解java中的Collections类>已经说得很清楚了,这里不再赘述. 你可以这样写:
-
Java中ArrayList的removeAll方法详解
本文介绍的是关于Java中ArrayList的removeAll方法的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 在开发过程中,遇到一个情况,就是从所有骑手Id中过滤没有标签的骑手Id(直接查询没有标签的骑手不容易实现), List<Integer> allRiderIdList = new ArrayList(); // 所有的骑手,大致有23W数据 List<Integer> hasAnyTagRiderId = new ArrayList(); // 有标签
-
Java中Arraylist动态扩容方法详解
前言 本文主要给大家介绍了关于Java中Arraylist动态扩容的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. ArrayList 概述 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长.ArrayList不是线程安全的,只能用在单线程环境下.实现了Serializable接口,因此它支持序列化,能够通过序列化传输:实现了RandomAccess接口,支持快速随机访问,实际上就是通过下标序号进行快速访问:实现了Cloneable接口,能被克隆.
-
java 中ArrayList迭代的两种实现方法
java 中ArrayList迭代的两种实现方法 Iterator与for语句的结合来实现,代码很简单,大家参考下. 实现代码: package cn.us; import java.util.ArrayList; import java.util.Iterator; //ArrayList迭代的两种方法 //Iterator与for语句的结合 public class Test1 { public static void main(String[] args) { ArrayList arra
-
Java中ArrayList初始化的四种方法详解
1 起因 在实际业务开发中, 我们经常会遇到需要临时创建一个数组的情况, 今天我们就来讲一下Java中ArrayList初始化的方法 2 解决方案 直接上结论, 总共有四种初始化方法: 双括号法 Arrays.asList stream Lists 2.1 双括号法 List<Integer> test = new ArrayList<Integer>(){{ add(1); add(2); }}; 2.2 Arrays.asList List<Integer> tes
-
Java中ArrayList集合的常用方法大全
ArrayList集合的创建 非泛型 创建ArrayList集合对象,可以添加任意Object子类元素至集合 //非泛型创建的ArrayList集合对象可以保存任何类型的值 ArrayList list = new ArrayList(); list.add("str");//存入String类型数据 list.add(23);//存入int类型数据 list.add(2.5);//存入double类型数据 list.add('c');//存入char类型数据 泛型 采用泛型创建Arr
-
Java中ArrayList类的使用方法
Java中ArrayList类的用法 1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和IList接口 灵活的设置数组的大小 2.如何使用ArrayList 最简单的例子: ArrayList List = new ArrayList(); for( int i=0;i <10;i++ ) //给数组增加10个Int元素 List.Add(i); //..
-
java arrayList遍历的四种方法及Java中ArrayList类的用法
java arrayList遍历的四种方法及Java中ArrayList类的用法 package com.test; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class ArrayListDemo { public static void main(String args[]){ List<String> list = new ArrayList<String
-
Java中ArrayList与顺序表的定义与实现方法
目录 1.线性表 定义 特征 2.顺序表 定义 实现 打印数组 新增元素 判断是否包含某个元素 查找元素 获取pos位置的元素 更改pos位置的值 删除操作 获取顺序表长度 清空顺序表 3.ArrayList 简介: 使用 一些常见方法 ArrayList的遍历 总结 1.线性表 定义 线性表是最基本.最简单.也是最常用的一种数据结构.线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列. 常见的线性表:顺序表.链表.栈.队列... 线性表在逻辑上是
随机推荐
- AJAX架构之Dojo篇
- Bootstrap项目实战之子栏目资讯内容
- Jquery ajax 同步阻塞引起的UI线程阻塞问题
- linux系统下ubuntu重启apache服务命令
- URL中井号的作用介绍
- linux文本处理工具及正则表达式集锦
- springmvc mybatis集成配置示例
- JavaScript中this的用法实例分析
- 跟老齐学Python之编写类之二方法
- mysql锁表和解锁语句分享
- myFocus slide3D v1.1.0 使用方法与下载
- javascript截取字符串(通过substring实现并支持中英文混合)
- 浅谈javascript六种数据类型以及特殊注意点
- Javascript中的常见排序算法
- JQuery的$命名冲突详细解析
- 探讨跨域请求资源的几种方式(总结)
- 将Sublime Text 2配置为Java的IDE的教程
- Android依据名字通过反射获取在drawable中的图片
- python多线程操作实例
- php环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程