public static void main(String[] args) {
String[] ar = { "dd", "c", "dd", "ff", "b", "e", "e" };
ArrayList<Object> list = new ArrayList<Object>();
for (int i = 0; i < ar.length; i++) {
list.add(ar[i]);
}
System.out.println("运行前:");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i) + " ");
}
System.out.println();
/* 第一种方法 */
/**
* set方法去除list中重复的数据 set中插入重复的值只保留一个
*/
HashSet<Object> h = new HashSet<Object>(list);
list.clear();
list.addAll(h);
/* 第一种方法 */
/* 第二种方法 */
/**
* 第二中方法去除list中重复的数据
*/
Set<Object> set = new HashSet<Object>();
List<Object> newList = new ArrayList<Object>();
for (Iterator<Object> iter = list.iterator(); iter.hasNext();) {
Object element = iter.next();
if (set.add(element))
newList.add(element);
}
list.clear();
list.addAll(newList);
/* 第二种方法 */
/* 第三种方法 */
/**
* 普通的方法去除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("运行后:");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i) + " ");
}
}
- 浏览: 49094 次
文章分类
最新评论
发表评论
-
全角半角混在截取固定位数
2015-08-27 18:29 758package zkktest; import java ... -
java读写txt文件
2015-04-22 11:06 673import java.io.BufferedReader; ... -
struts2前后台传值汇总-(4)ServletRequestAware-http格式
2015-03-13 22:20 800后台调用ServletRequestAwa ... -
struts2前后台传值汇总-(3)ServletActionContext-http格式
2015-03-13 22:08 734后台调用ServletActionContext.getS ... -
struts2前后台传值汇总-(2)RequestAware-map格式
2015-03-13 21:51 1443后台继承RequestAware,SessionAware ... -
struts2前后台传值汇总-(1)ActionContext-map格式
2015-03-13 21:38 1233后台调用ActionContext中的getObject( ... -
复制新项目注意事项
2015-02-25 22:24 735当你从别的项目复制为一个新项目的时候,需要.修改Web p ... -
用java进行文件转码方法
2015-01-30 16:01 969用java进行文件转码方法 BufferedReader ... -
java文件转码方法
2015-01-30 16:01 1BufferedReader br = new Buffer ... -
导zip4j_1.3.2.jar包,出力压缩加密csv文件
2015-01-21 11:49 829导包 入口 public static ... -
不导包,压缩出力csv文件
2015-01-21 11:38 1034最近研究压缩csv文件出力,根据网上资料,整理了一套用不导 ... -
学习:java设计模式—工厂模式
2015-01-09 19:01 605一、工厂模式主要是 ... -
Eclipse CVS更换帐号的方法
2014-08-18 11:43 725使用CVS进行版本控制,当要提交一个文件时,发现需要重新输入C ... -
BigDecimal属性
2014-04-23 09:56 862BigDecimal abs() ... -
BigDecimal对象的用法(加减乘除 + 四舍五入)
2014-04-21 11:10 866java.math.BigDecimal。BigDecimal ... -
正则表达式使用
2014-03-20 11:19 604java.lang包中的String类,java.util.r ... -
System.out.println()和System.out.write()的区别
2014-02-06 15:47 610这两个函数一个是System.out.write()输出字符流 ... -
Java中throw和throws的区别
2014-02-06 15:45 473系统自动抛出的异常 所有系统定义的编译和运行异常都可以由系统自 ... -
全角半角转换问题
2013-12-05 13:17 1177网上找个日文全角半角转换的方法。整理如下: public c ...
相关推荐
List<PenBean> newPenBeanList = new ArrayList(new HashSet(penBeanList)); ``` ### 方法三:Stream API去重 Java 8引入了Stream API,提供了强大的流式处理能力。可以使用Stream的distinct()方法进行去重,同时...
Java 8中引入了Stream API, Stream API提供了一个简单的方法来实现List去重。下面是一个示例代码: ```java List<User> users = Lists.newArrayList( new User(1, "a"), new User(1, "b"), new User(2, "b"), ...
由于ArrayList本身不提供内置的去重方法,我们需要借助其他数据结构或算法来实现。一种常见的方法是利用HashSet。HashSet是一个不允许有重复元素的集合,它提供了快速的插入和查找操作。将ArrayList转换为HashSet,...
双重for循环是一种简单的方式来实现List去重。我们可以使用两个循环来比较List中的每个元素,并删除重复的元素。下面是一个示例代码: ```java public static void main(String[] args) { List<Integer> list = ...
总的来说,Java 8的Stream API为处理列表数据提供了强大而灵活的方式,使得去重操作变得简单易行。通过理解并熟练运用这些方法,开发者可以提高代码的可读性和效率,更好地应对各种数据处理场景。
需要注意的是,上述方法虽然简单,但只适用于List中的元素是不可变的(比如String),因为HashSet依赖于对象的equals()和hashCode()方法来判断是否重复。如果List中包含自定义的对象,需要确保这些对象正确实现了...
记住,对于复杂的数据结构,可能需要更复杂的策略,如使用`HashSet`或`LinkedHashSet`,它们在底层实现中自动处理了去重逻辑。但在这个基本示例中,我们只使用了`ArrayList`和手动遍历来达到目的。
以下是一个简单的示例,展示如何创建、添加、遍历和打印ArrayList中的字符串: ```java import java.util.ArrayList; public class Main { public static void main(String[] args) { // 创建一个ArrayList ...
### Java删除重复字段知识点解析 在本篇文章中,我们将深入...使用`HashMap`是一个简单而实用的方法,它不仅易于理解,而且在大多数情况下都能提供很好的性能。当然,根据实际情况选择最合适的数据结构是非常重要的。
这种方法简单直观,但会创建新的集合对象。 - 方法二:利用 `HashSet` 的无序、不重复特性,将 `Vector` 转换为 `HashSet`,再将 `HashSet` 的元素添加到新 `Vector`。这种方法更高效,因为 `HashSet` 自动去重。 ...
* 高效去重:这个示例代码使用了Iterator对象来迭代ArrayList对象中的元素,然后使用contains方法来检查当前元素是否已经存在于新的ArrayList对象中,从而实现了高效的去重功能。 * 灵活性强:这个示例代码可以应用...
SMTP 协议是简单邮件传输协议,用于发送邮件。默认端口号为 253。 三、文件复制功能 编写程序,完成文件复制功能。使用 InputStream 和 OutputStream 可以实现文件复制。首先,创建一个 InputStream 对象,用于...
虽然这种方法简单有效,但它会改变元素的原始顺序。这是因为HashSet不保留元素的插入顺序。如果需要保持原来的顺序,可以考虑使用`LinkedHashSet`。 ### 总结 以上三种方法都可以有效地去除List集合中的重复元素。...
例如,一个简单的查询映射可能如下所示: ```xml SELECT * FROM users WHERE id = #{id} ``` 接下来,我们关注关联嵌套。在处理一对多或多对多关系时,关联嵌套非常有用。例如,一个用户可能有多个订单,我们...
该示例代码简单明了地展示了如何使用Java来模拟大乐透开奖结果的过程。通过理解上述代码,学习者可以更好地掌握Java中的基本数据结构、循环控制结构以及数组操作等相关知识。此外,还可以进一步探讨如何优化随机数...
在商品管理系统中,可能会用ArrayList或LinkedList存储商品列表,HashSet用于去重,HashMap则用于快速查找和关联数据。 7. **异常处理**:在处理用户请求和数据库操作时,需要进行异常处理以确保程序的稳定运行。...
它们提供了一种高效、灵活的方式来存储和管理数据,无论是简单的数组形式还是复杂的数据结构。本教程“.NET编程集合实例”旨在帮助初学者和进阶开发者深入理解.NET框架中的集合,并通过丰富的实例来提升编程技能。 ...
这种方法虽然简单,但效率较低,因为每次 `contains` 方法都会遍历整个列表。 ### 2. 使用 HashSet 进行优化 #### 示例代码 ```java public String[] array_unique_optimized(String[] a) { Set<String> set = ...
这个简单的图书管理系统使用了 `ArrayList` 来存储所有图书信息,使用 `HashSet` 来存储已借阅的图书标题。通过这些基本的数据结构,我们可以轻松实现图书的添加、借阅、归还和搜索等功能。 总之,数组与集合是 ...
3. 探索Set接口,实现元素去重功能,并比较HashSet与TreeSet的差异。 4. 深入理解Map接口,实现键值对的存取和查找,比较HashMap与TreeMap的性能特点。 5. 应用集合框架解决实际问题,如模拟银行账户系统,使用Map...