1.前言 。
对电话号码等排序和去重,有很多方法,可以用数组Arrays的方法,可以用map,set,Collections 。经过对比,TreeSet比hashset和hashmap都要来得方便,它已经集成自动升序和去重功能。hashset能去重,但排序需要转换成数组,Collections 排序则只能是List类型的数据。也就是说其他的至少排序去重要两步,而treeset一步就搞定了 。
2.代码
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
public class Test {
public static void main(String[] argus){
//
// String[] a=new String[]{"13333332313","13455554444","13111111111","13323332313"};
// Arrays.sort(a);
// for(int i=0;i<a.length;i++){
// System.out.println(a[i]);
// }
Set set=new TreeSet<String>();
//插入的时候,已经去重和排序,所以很方便
set.add("13855555555");
set.add("13455555555");
set.add("13845555555");
set.add("13455555555");
set.add("kk1");
set.add("");
System.out.println(set.size());
Iterator it=set.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
分享到:
相关推荐
在Java集合框架中,TreeSet是一个重要的数据结构,它是Set接口的实现类之一,与HashSet和LinkedHashSet不同,TreeSet具有排序功能,这是因为其不仅继承自AbstractSet,还实现了SortedSet和NavigableSet接口。...
`TreeSet`的主要特点就是它会自动按照一定的顺序对存储的元素进行排序。在这个场景下,我们使用`TreeSet`来实现学生成绩的排序,无需额外的排序操作,这大大简化了代码并提高了效率。 首先,我们需要理解`TreeSet`...
1. **有序性**:`TreeSet`中的元素会根据其自然排序或者自定义比较器进行排序。 2. **唯一性**:不允许有重复元素,如果尝试添加已存在的元素,将会被忽略。 3. **效率**:由于基于红黑树,`add()`, `remove()` 和 `...
·基于JDK 11,将Java8、Java9、Java10、Java11新特性一网打尽 ·课程中,Eclipse和IDEA这两种企业一线开发环境都使用到了 3.技术讲解更深入、更全面: ·课程共30天,715个知识视频小节,涉及主流Java使用的...
使用TreeSet和Comparator,编写TreeSetTest2类,要求对TreeSet中的元素1-元素10进行排列,排序逻辑为奇数在前偶数在后,奇数按照升序排列,偶数按照降序排列。 如果需要的话可以下载,有写成文章的。有写了一点中文...
排序算法在 Java 中的应用 Java 中的排序算法是指对列表中的元素进行排序的方法。...在 Java 中,对列表进行排序的最快方法是使用 Collections.sort() 方法,并使用自定义的比较器来实现灵活的排序规则。
本话题主要关注如何使用Java编程语言实现电话号码的去重功能。电话号码去重是一个关键的业务需求,例如在客户管理系统、市场营销或数据分析中,避免重复的电话号码可以提高效率,减少资源浪费。 Java作为一种多用途...
对`Library`的`TreeSet<Book>`,可以通过自定义比较器(Comparator)实现按借出次数排序。每个`Book`对象可以维护一个计数器,表示被借出的次数。在比较器中,比较这个计数器,从而实现排序。然后遍历排序后的`...
或者,可以在创建 TreeSet 时提供一个比较器(Comparator)来指定自定义的排序规则。 唯一性:TreeSet 中不允许重复元素,每个元素都必须是唯一的。如果将重复元素添加到 TreeSet 中,后面的重复元素将被忽略。 ...
而在`SetTest.java`中,如果我们要测试不同的Set实现并比较它们的性能,或者需要对测试数据进行排序,那么`TreeSet`将是一个合适的工具。 总的来说,理解`HashSet`和`TreeSet`的底层实现和特性,可以帮助开发者根据...
在Java编程语言中,`TreeMap` 和 `TreeSet` 是两种基于红黑树数据结构实现的集合类,它们都提供了自动排序的功能。本文将详细探讨 `TreeMap` 和 `TreeSet` 的排序机制以及如何自定义排序规则。 首先,`TreeMap` 是...
对于大型数据集,`Collections.sort()`通常能提供很好的性能,但如果需要对大量不可变对象或已排序的列表进行排序,使用`TreeSet`或`LinkedHashSet`等集合类型可能会更高效,因为它们在底层实现了红黑树结构,插入和...
当需要进行洗牌操作时,可以先将`TreeSet`的元素复制到`ArrayList`,然后对`ArrayList`进行随机排序,最后再将`ArrayList`中的元素重新添加回`TreeSet`。 总之,在选择数据结构实现扑克牌游戏时,应充分考虑数据的...
Java 中 TreeSet 的两种排序方式 TreeSet 是 Java 中一种基于树形结构的 Set 实现,它具有自动排序的功能。在使用 TreeSet 时,我们可以通过实现 Comparable 接口或提供Comparator 对象来指定排序规则。下面,我们...
TreeSet会调用集合元素的compareTo(Objectobj)方法来比较元素之间大小关系,然后将集合元素按升序排列,这种方式就是自然排序。(比较的前提:两个对象的类型相同)。java提供了一个Comparable接口,该接口里定义了...
TreeMap则使用红黑树结构,元素按照键的自然排序或自定义比较器排序。 在Java集合排序方面,我们主要关注List和Map。对于List,可以使用Collections.sort()方法进行排序,这个方法默认使用元素的自然顺序,如果元素...
在Java集合框架中,`Collections.sort()`方法可以对List类型的集合进行排序。如果列表元素实现了`Comparable`接口,它会自动排序。如果列表元素是自定义对象,那么`compareTo()`方法将决定排序规则。 3. **...
public int compare(String o1,String o2) { return o1.length()-o2.length();... TreeSet ts = new TreeSet(com); ts.add("string"); ts.add("char"); ts.add("nothing�"); System.out.println(ts);
Java是全球排名第一的编程语言,Java工程师也是市场需求最大的软件工程师。 从互联网到企业平台,Java是应用最广泛的编程语言. Java是基于JVM虚拟机的跨平台语言,一次编写,到处运行; Java程序易于编写,而且有...
TreeSet 红黑树结构算法是 Java 中的一种数据结构,它是基于红黑树数据结构的实现。红黑树是一种自平衡的排序二叉树,它可以保证快速检索指定节点。TreeSet 和 TreeMap 之间存在着紧密的关系,下面我们将详细讲解 ...