treeMap and treeSet
TreeSet:如果要对对象进行排序,对象类要实现Comparable接口!
TreeMap:如果要对对象进行排序,对象类要实现Comparable接口!
下面是我自己写的小程序主要传输对象
public class News implements Comparable<News>{ //news为传递的对象类
String title;
String content;
public News(String title, String content) {//构造带参函数
super();
this.title = title;
this.content = content;
}
public News() {无参函数
super();
}
@Override
public int compareTo(News o) {
// TODO Auto-generated method stub
@SuppressWarnings("unused")
News news = (News) o;
if(this.title.compareTo(o.title)>0){
return 1;
}else if(this.title.compareTo(o.title)<0){
return -1;
}else{
return 0;
}
}
}
//treeMap传递主函数里的
TreeMap<String, News> treeMap=new TreeMap<String,News>();
treeMap.put("3", new News("a","CJJDI"));
treeMap.put("1",new News("d","CJnsdkI"));
treeMap.put("b", new News("1","chuidil"));
treeMap.put("a", new News("4","cnsoai"));
Iterator ti1=hashMap.entrySet().iterator();
while(ti1.hasNext()){ //调用treemap的两个方法hasnext next
@SuppressWarnings("unchecked")
Entry<String, News> e1= (Entry<String, News>) ti1.next();
System.out.println("key:"+e1.getKey()+"value:"+e1.getValue().title+""+e1.getValue().content);
、
//hashset的传递对象主函数里的
HashSet<News> hashSet2=new HashSet<News>();
News news5=new News("G","cnidjdi");
News news6=new News("B","cnidjdi");
News news7=new News("P","cnidjdi");
hashSet2.add(news5);
hashSet2.add(news6);
hashSet2.add(news7);
Iterator<News> it2=hashSet2.iterator();
while(it2.hasNext()){
news6=it2.next();
System.out.print(news6.title);
System.out.println(news6.content);
treeMap and treeSet的更多相关文章
- java中treemap和treeset实现(红黑树)
java中treemap和treeset实现(红黑树) TreeMap 的实现就是红黑树数据结构,也就说是一棵自平衡的排序二叉树,这样就可以保证当需要快速检索指定节点. TreeSet 和 Tre ...
- TreeMap与TreeSet的实现
虽然TreeMap 是 Map 接口的常用实现类,而 TreeSet 是 Set 接口的常用实现类,但TreeSet底层是通过 TreeMap来实现的,因此二者的实现方式完全一样.而 TreeMap ...
- TreeMap与TreeSet
TreeMap与TreeSet TreeSet底层则采用一个NavigableMap来保存TreeSet集合的元素.实际上,由于NavigableMap只是一个接口,因此底层依然是使用TreeMap来 ...
- java集合类TreeMap和TreeSet
看这篇博客前,可以先看下下列这几篇博客 Red-Black Trees(红黑树) (TreeMap底层的实现就是用的红黑 ...
- Java集合(4)一 红黑树、TreeMap与TreeSet(下)
目录 Java集合(1)一 集合框架 Java集合(2)一 ArrayList 与 LinkList Java集合(3)一 红黑树.TreeMap与TreeSet(上) Java集合(4)一 红黑树. ...
- Java集合(3)一 红黑树、TreeMap与TreeSet(上)
目录 Java集合(1)一 集合框架 Java集合(2)一 ArrayList 与 LinkList Java集合(3)一 红黑树.TreeMap与TreeSet(上) Java集合(4)一 红黑树. ...
- TreeMap和TreeSet的区别与联系
TreeMap 和 TreeSet 是 Java Collection Framework 的两个重要成员,其中 TreeMap 是 Map 接口的常用实现类,而 TreeSet 是 Set 接口的常 ...
- TreeMap与TreeSet的源码分析
1.TreeMap源码 1.属性部分: private final Comparator<? super K> comparator;//比较器 private transient Ent ...
- TreeMap和TreeSet在排序时如何比较元素?Collections工具类中的sort()方法如何比较元素?
TreeSet要求存放的对象所属的类必须实现Comparable接口,该接口提供了比较元素的compareTo()方法,当插入元素时会回调该方法比较元素的大小.TreeMap要求存放的键值对映射的键必 ...
随机推荐
- iOS 中如何将View设置为圆角的矩形?
今天刚好需要添加一个圆角的view. 必须先导入头文件. #import <QuartzCore/QuartzCore.h> bgView.layer.cornerRadius = cor ...
- oracle工作经验(左右连接、decode)
oracle左右连接:select a.studentno, a.studentname, b.classname from students a, classes b where a.classid ...
- STL之迭代器(iterator)
STL的中心思想在于:将数据容器和算法分开,彼此独立设计,最后再用一帖粘着剂将它们撮合在一起.没错,这个粘着剂正是迭代器(iterator).迭代器的主要目的是通过遍历来对容器中元素进行相关操作.算法 ...
- Squid服务日志分析
Squid服务日志分析 Apache 和 Squid 是两种著名的代理缓存软件,但Squid 较 Apache 而言是专门的代理缓存服务器软件,其代理缓存的功能强大,支持 HTTP/1.1 协议,其缓 ...
- 2016-08-16: copy-and-swap
#include <algorithm> // std::copy #include <cstddef> // std::size_t #include <stdio.h ...
- 异步编程:When.js快速上手
前些天我在团内做了一个关于AngularJS的分享.由于AngularJS大量使用Promise,所以我把基于Promise的异步编程也一并介绍了下.很多东西都是一带而过,这里再记录下. Angula ...
- 建议Javascript以后都用严格模式
建议以后都在js文件的头部加上 "use strict"; 现在主流的浏览器都支持,不支持的浏览器也会忽略掉. 可以使我们写的更规范,可控: 有些错误编译的时候就会出现,方便排错:
- MySQL的表的优化和列类型的选择
列选择原则: 1:字段类型优先级 整型 > date,time > enum,char>varchar > blob 列的特点分析: 整型: 定长,没有国家/地区之分,没有 ...
- [Reship]如何回复审稿人意见
================================= This article came from here:http://blog.renren.com/GetEntry.do?id= ...
- Web前端之html_day2
1.meta标签 1 2 3 <metacharset="UTF-8"/> <metaname="Keywords" content=&quo ...