Java程序设计项目化教程-7.5.5 TreeMap_第1页
Java程序设计项目化教程-7.5.5 TreeMap_第2页
Java程序设计项目化教程-7.5.5 TreeMap_第3页
Java程序设计项目化教程-7.5.5 TreeMap_第4页
Java程序设计项目化教程-7.5.5 TreeMap_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

7.5.5TreeMapHashMap集合存储的元素的键值是无序且不可重复的,为了对集合中的元素的键值进行排序,Map接口提供了另一个可以对集合中元素键值进行排序的实现类TreeMap。例7-25TreeMap集合的用法importjava.util.Iterator;importjava.util.Set;importjava.util.TreeMap;public

classexample7_25{public

static

voidmain(String[]args){ TreeMapmap=newTreeMap();//创建Map集合

map.put(3,"菲菲");//存储键和值

map.put(2,"小明");

map.put(4,"赵六");

map.put(3,"大明"); SetkeySet=map.keySet(); Iteratorit=keySet.iterator();

while(it.hasNext()){ Objectkey=it.next(); Objectvalue=map.get(key);//获取每个键对应的值 System.out.println(key+":"+value); } }}7.5.5TreeMapTreeMap集合之所以可以对添加的元素的键值进行排序,其实现与TreeSet一样,TreeMap的排序也分为自然排序和比较排序两种。例7-26比较排序法实现按键值排序importjava.util.Comparator;importjava.util.Iterator;importjava.util.Set;importjava.util.TreeMap;classStudent{privateStringname;

private

int

age;

publicStringgetName(){

return

name;}

public

voidsetName(Stringname){

this.name=name;}

public

intgetAge(){

return

age;}

public

voidsetAge(int

age){

this.age=age;}

publicStudent(Stringname,int

age){

this.name=name;

this.age=age;}

@Override

publicStringtoString(){

return

"Student[name="+name+",age="+age+"]";}}public

classexample7_26{

public

static

voidmain(String[]args){TreeMaptm=newTreeMap(newComparator<Student>(){

@Override

public

intcompare(Students1,Students2){

int

num=s1.getName().compareTo(s2.getName());//按照姓名比较

return

num==0?num:s1.getAge()-s2.getAge();}});

tm.put(newStudent("菲菲",23),"北京");

tm.put(newStudent("李四",33),"上海");

tm.put(newStudent("小明",53),"深圳");

tm.put(newStudent("小花",23),"广州");SetkeySet=tm.keySet();Iteratorit=keySet.iterator();

while(it.hasNext()){Objectkey=it.next();Objectvalue=tm.get(key);System.out.println(key+":"+value);}}}Map接口中的实现类Hashtable,与HashMap很相似,区别在于Hashable是线程安全的。Hashable存取元素时速度很慢,目前基本上被HashMap类所取代,但Hashable类的子类Properties在实际应用中却非常重要。7.5.5TreeMap7.5.5TreeMapBackgroup-color=greenFont-size=18pxLanguage=chineseProperties主要用来存储字符串类型的键和值,在实际开发中,经常使用Properties集合来存取应用的配置项。假设有一个文本编辑工具,要求默认背景色是绿色,字体大小为18px,语言为中文,其配置项的代码如下:例7-27Properties集合的使用importjava.util.Enumeration;importjava.util.Properties;public

classexample7_27{public

static

voidmain(String[]args){Propertiesp=newProperties();//创建Properties对象

p.setProperty("Background-color","green");

p.setProperty("Font-size","18px");

p.setProperty("Language","chinese");Enumerationnames=p.propertyNames();//获取Enumeration对象所有键的枚举

while(names.hasMoreElements()){Stringkey

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论