- 浏览: 780248 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (480)
- Spring (12)
- Hibernate (8)
- Struts2 (4)
- Java 基础-JDK-类-接口-URI-专题研究 (27)
- 线程、线程池、多线程高并发高可用、Socket通信 (15)
- Oracle数据库 (20)
- 一般-前端js-html-其它 (25)
- JYSK-互联网金融、金融科技、支付、公司、新闻等等 (8)
- Ajax-jQuery开源框架 (7)
- Json-轻量级的数据交换格式 (14)
- JavaScript (15)
- Jsp、Servlet、Servlet+JSP+JavaBean开发模式(MVC) (18)
- Html-JavaScript-前端-调用接口 (12)
- Sql Server 2005 (6)
- 正则表达式 (2)
- Java tools (18)
- 加签与验签、加密与解密 (3)
- Ajax技术核心-xmlHttpRequest(简称XHR) (6)
- xml-数据交换格式 (3)
- 信息采集 (1)
- Http - Https - HttpClient - httpCore-SSL-TLS (10)
- HtmlParser (2)
- 标签库 (1)
- SMS (2)
- jxl-导入导出 (4)
- poi-导入导出 (2)
- 定时器Timer+Quartz (6)
- 工作流引擎JBPM3.2.3 (4)
- 工作流引擎JBPM4 (0)
- 数据源-JNDI (0)
- tomcat、weblogic等应用服务器 (6)
- 工作流引擎jbpm5 (1)
- 搜索引擎Lucene (1)
- ant (1)
- 大数据-HBase (2)
- bigtable (0)
- 数据库设计 (4)
- jquery tab (0)
- mybatis (5)
- jquery ui 1.10.3 (5)
- Jboss7 (1)
- 规则引擎drools (0)
- 工作流引擎Activiti5 (0)
- 数据库-用户自定义函数 (0)
- 数据库-存储过程 (2)
- 数据库-视图 (0)
- 数据库-触发器 (0)
- 数据库-sql (2)
- highcharts-图表工具 (1)
- sql server 2008 (6)
- 诗词-工作室 (2)
- 数据割接 (1)
- GIS-地理信息系统 (2)
- RS-遥感技术 (1)
- GPS-全球定位系统 (1)
- java整合flex_RIA开发 (3)
- C#编程语言 (5)
- webservice_axis2_cxf_soap_wsdl (2)
- sql语句 (3)
- Flex_WebService_GIS (25)
- PHP编程语言 (0)
- ExtJS4.2 (1)
- Spring mvc (5)
- EasyUI1.4.2 (16)
- 日期时间工具类 (4)
- 随机数 (1)
- Arcgis api for js (0)
- Mysql数据库 (9)
- 移动互联网 java html5/flash socket netty (0)
- API接口 (1)
- AndroidStudio (0)
- Git (2)
- Maven (5)
- IDEA (0)
- 大数据-Hadoop (2)
- JPA (0)
- Spring boot (4)
- JSF (0)
- nginx_lua_module_redis (2)
- Activiti (1)
- bootstrap (1)
- AngularJS (10)
- 数据库-索引 (1)
- Linux及其连接工具SSH (4)
- java日志管理 (2)
- islider滑动控件 (1)
- jquery (1)
- 异常处理Exception (1)
- 秒杀与类秒杀系统 (1)
- 连接数据库、数据库连接池 (4)
- 数据库-临时表 (1)
- 软件设计模式-单例、多例、代理、工厂、观察者 (3)
- 集合框架 (5)
- 人工智能--Artificial intelligence、神经网络算法、机器学习 (1)
- 分布式应用 (1)
- SOA服务-Dubbo框架-Thrift框架 (2)
- Zookeeper分布式服务框架 (2)
- intellij idea (1)
- python编程语言 (0)
- 消息队列_MQ (0)
- 消息队列_RabbitMQ (2)
- 消息队列_ActiveMQ (1)
- 消息队列_Kafka (2)
- 缓存_Redis (4)
- 缓存_Memcache (0)
- 缓存_Ehcache (0)
- ivy-ivyde (1)
- google-protocol buffers (1)
- 正向代理-正向代理服务器 (1)
- 反向代理-反向代理服务器 (1)
- JVM内存模型 (0)
- Thunder框架 (1)
- NIO-非阻塞式IO (0)
- 软件测试、性能测试 (1)
- 序列化、Serializable接口、Externalizable接口 (3)
- 线程池-ExecutorService-ThreadPoolExecutor (1)
- web.xml (1)
- java开发-java工具-实用工具网站 (6)
- 医疗 (1)
- Filter-过滤器 (2)
- Unicode码-双字节字符编码 (1)
- OpenResty (1)
- 计算机网络 (1)
- eclipse_myeclipse_intellij idea (3)
- Enum (1)
- 大数据--Big Data (1)
- 云计算--Cloud computing (1)
- Elastic-Job (1)
- Redis (2)
- 文件流-IO操作 (6)
- 计算机基础知识 (1)
- Hessian-二进制RPC协议 (1)
- String类 (3)
- BigDecimal类 (1)
- java重要接口 (1)
- ReactJS (1)
- 跨域问题 (0)
- Map (1)
- 注解 (1)
- ASCII码-单字节字符编码 (1)
- 微服务、微服务架构 (2)
- RPC协议、RPC服务、RPC框架 (0)
- java反射 (1)
- java项目之classpath (1)
- 经典算法-树 (1)
- listener-监听器 (1)
- Interceptor-拦截器 (1)
- pojo javabean (2)
- 计算机科学与技术-进阶 (1)
- 代码规范与文档编写 (1)
- UML-统一建模语言 (1)
- 对接微信、支付宝 (3)
- 压力测试 (1)
- 办公软件-Excel (1)
- 办公软件-PPT (0)
- UTF8、GBK编码 (1)
- 微服务架构:Spring Cloud架构-Dubbo架构 (6)
- Nginx (1)
- 点滴业务 (1)
- form表单-json数据-转换与接口调用 (1)
- Junit单元测试 (1)
- 大数据-Spark (1)
- 大数据-Storm (1)
- 数据库事务-Spring事务 (0)
- elasticsearch (1)
- windows (1)
最新评论
方法一:循环元素删除 (使用的方式FOR循环操作。不建议使用大数据量的转换。。n*n的循环量)
// 删除ArrayList中重复元素
public static void removeDuplicate(List list) {
for ( int i = 0 ; i < list.size() - 1 ; i ++ ) {
for ( int j = list.size() - 1 ; j > i; j -- ) {
if (list.get(j).equals(list.get(i))) {
list.remove(j);
}
}
}
System.out.println(list);
}
方法二:通过HashSet剔除 (hash数组不能产生重复数据的特性,来转换LIST)
// 删除ArrayList中重复元素
HashSet hSet = new HashSet(list);
list.clear();
list.addAll(hSet);
System.out.println(list);
方法三: 删除ArrayList中重复元素,保持顺序
// 删除ArrayList中重复元素,保持顺序
public static void removeDuplicateWithOrder(List list) {
Set set = new HashSet();
List newList = new ArrayList();
for (Iterator iter = list.iterator(); iter.hasNext();) {
Object element = iter.next();
if (set.add(element))
newList.add(element);
}
list.clear();
list.addAll(newList);
System.out.println( " remove duplicate " + list);
}
________________________________________________
// 项目实践:删除ArrayList中重复元素,保持顺序
public List removeDuplicateWithOrder(List list) {
for (int i = 0; i < list.size(); i++) {
System.out.println("剔除前:"+list.get(i));
}
Set set = new HashSet();
List newList = new ArrayList();
for (Iterator iter = list.iterator(); iter.hasNext();) {
Object element = iter.next();
if (set.add(element))
newList.add(element);
}
list.clear();
list.addAll(newList);
for (int i = 0; i < list.size(); i++) {
System.out.println("剔除后:"+list.get(i));
}
return list;
}
发表评论
-
Apache Ant在Windows 下的安装和配置
2013-03-22 15:06 956引自:http://www.cnblogs.com/ghj19 ... -
java文件操作
2013-03-20 10:40 697一.获得控制台用户输入的信息 /** *//**获得控制台 ... -
DES加密
2013-03-20 10:24 1552数据加密算法(Data Encryption Algorith ... -
HttpSessionBindingListener实现在线人员查看即人数统计
2013-03-19 17:02 1738jsp+servlet的效果,需要以下5个文件: logi ... -
java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
2013-02-22 14:12 1125,+、*、|、\等符号在正则表达示中有相应的不同意义。一般来讲 ... -
字符串“2012-09-06”转换为java.util.Date“2012-09-06”
2012-09-06 12:00 596package com.tender.news.util; i ... -
时间字符串str转标准格式日期字符串str 00:00:00
2012-08-31 09:19 1177public class Test { public st ... -
形如Mon Dec 31 00:00:00 CST 2012字符串转换为相应日期Date
2012-08-31 09:01 14039package com.tender.news.util; ... -
Calendar在时间上加上任意天数(正/负),就可以得到相应的日期
2012-08-29 09:52 1896import java.text.SimpleDateForm ... -
Date时间相减问题
2012-08-29 09:51 1215import java.text.ParseException ... -
日历上翻一个月一个星期
2012-08-24 13:16 875//将日历上翻1个月 返回日期 public ... -
百分比形式保留小数点后2位(且四色五入)
2012-08-14 17:02 2784//有效位数 function math(num,v) { ... -
"o_neww_ww_123"分割字符串split
2012-08-08 15:50 880public class Test01 { p ... -
如何用div隐藏table中的某几行呢?
2012-07-20 11:17 5761其实很简单的功能,不过貌似网上都找不到适合的参考用法。在这里留 ... -
IfHanZi --判断字符串中是否包含汉字
2012-07-19 09:05 868public class IfHanZi { pub ... -
文件类型判断:doc/dot
2012-07-18 11:18 1072var fileName = document.forms[0 ... -
Oracle 获取当前年、月、日
2012-07-16 11:43 1677Oracle 获取当前年、月、日 第一种:new Timest ...
相关推荐
// 删除ArrayList中重复元素 public static void removeDuplicate(List list) { for ( int i = 0 ; i () - 1 ; i ++ ) { for ( int j = list.size() - 1 ; j > i; j -- ) { if (list.get(j).equals(list.get(i...
主要介绍了2种Java删除ArrayList中的重复元素的方法,感兴趣的朋友可以参考下
包含对象转list、获取两个日期之间的所有日期、获取两个日期之间的所有日期(小时)、获取两个日期之间的所有日期(分钟)、根据文件路径创建所有文件夹、删除ArrayList中重复元素,保持顺序、判断字符串是否包含...
List中的元素有序、允许有重复的元素,Set中的元素无序、不允许有重复元素。 3. Vector线程同步,ArrayList、LinkedList线程不同步。 4. LinkedList适合指定位置插入、删除操作,不适合查找;ArrayList、Vector适合...
主要会从ArrayList的构造方法、增加元素、删除元素、获取元素、查询元素、清空元素、判断元素是否存在以及ArrayList的遍历进行入手分析。 一:ArrayList的具体实现 1.1:构造函数 ArrayList list = new ArrayList();...
关于数组和GridView 或者和java中ArrayList相同的数据结构,其中元素在循环对比删除时,遇到的一些比如数组越界,或者删除一项后,中间隔一项,跳到下下项继续再比较的情况,如何分析,和解决。
Java集合框架中的List接口是一种有序的集合,它可以存储重复的元素。它是Collection接口的子接口,提供了一系列可以对列表进行操作的方法,如添加、插入、删除、获取元素等。List接口还可以通过索引访问元素,类似于...
(重点、难点)11.11 java.util.ArrayList(掌握)存放对象的动态数组,用户可以根据元素的索引访问元素允许放重复的元素,并且允许null元素11.11 ArrayList类(p375)存储对象的类,不限定个数,比对象数组方便。...
ArrayList允许空值和重复元素,当往ArrayList中添加的元素数量大于其底层数组容量时,其会通过扩容机制重新生成一个更大的数组。ArrayList扩容的长度是原长度的1.5倍 由于ArrayList底层基于数组实现,所以其可以保证...
【温馨提示】不得用于商业、不合法用途...(2)选中“①删除重复元素留一个” (3)点击中间的按钮开启转换 使用到的知识点: (1)字符串转化为char[]数组 (2)char[]元素导入Arraylist集合 (3)删除指定索引的元素
List接口提供了按照索引位置访问元素的方法,以及添加、删除和修改元素的操作。List接口的实现类包括ArrayList、LinkedList等。 Set接口是无序的集合,元素不能重复。Set接口的实现类包括HashSet、LinkedHashSet等...
List集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问,查找元素效率高,插入删除效率低。 Set集合是无序集合,集合中的元素不可以重复,检索效率低下,删除和插入效率高,访问集合...
65、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别 17 66、HashMap和Hashtable的区别 17 67、说出ArrayList,Vector, LinkedList的存储性能和特性 17 68、java中有几...
65、去掉一个Vector集合中重复的元素 66、Collection 和 Collections的区别。 67、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别? 68、你所知道的集合类都有哪些...
⽼掉⽛的问题了,还在这⾥⽼⽣常谈:List特点:元素有放⼊顺序,元素可重复 ,Set特点:元素⽆放⼊顺序,元素不可重复。 1-2)数据库的三⼤范式? 原⼦性、⼀致性、唯⼀性 1-3)java 的io类的图解 1-4)对象与引⽤...
Java集合可以分为Collection和Map两种体系: Collection接口: List:元素有序,可重复的集合 ArrayList: 底层数组实现,有利于随机访问get LinkedList:底层是链表,有利于频繁的插入、删除操作(ArrayList删除和...
Java集合可以分为Collection和Map两种体系: Collection接口: List:元素有序,可重复的集合 ArrayList: 底层数组实现,有利于随机访问get LinkedList:底层是链表,有利于频繁的插入、删除操作(ArrayList删除和...
有序、有索引、元素可重复 1.ArrayList: 底层是数组结构、查询快、增删慢、不同步 添加第一个元素的时候,创建默认个数是10个,如果超出了10个,就创建一个长度为 10+10>>1=15的数组 2.LinkedList: 底层是链表结构、...
它对于堆排序的实现很有用,在这种排序中,将无序项目的数组加载到BinaryHeap中,并且最小优先级元素被重复删除并放入旧数组中。 BinaryHeap不是将堆实现为树,而是将其实现为ArrayList,因为可以使用简单的数学...