`

TreeMap 排序

    博客分类:
  • Java
J# 
阅读更多

/*

比较函数类TComp比较两个包含姓和名的字符串。它首先比较姓,具体是这样做的,首先寻找每一个字符串中最后一个空格的下标,然后比较从这个位置开始的每一个元素的子字符串。当两个字符串中姓完全相等时,再比较两个名。这样就形成了先按姓排序,在姓相同的情况下再按名字进行排序的树型映射。

*/

//Use a comparator to sort accounts by last name.
import java.util.*;
//Compare last whole words in two strings.
class  TComp implements Comparator{
 public int compare(Object a,Object b){
  int i,j,k;
  String strA,strB;

  strA = (String)a;
  strB = (String)b;

  //find index of beginning of last name
  i = strA.lastIndexOf(' ');
  j = strB.lastIndexOf(' ');
  k = strA.substring(i).compareTo(strB.substring(j));
  if(k==0)  //last name match,check entire name
   return strA.compareTo(strB);
  else
   return k;

 }
 //no need to override equals
}
public class TreeMapDemo2{
 public static void main(String[] args)
 {
  //Create a tree map.
  TreeMap tm = new TreeMap(new TComp());

  //Put elements to the map.
  tm.put("Sue Yuan",new Double(17.15));
  tm.put("Jiahui Sheng",new Double(78777));
  tm.put("Huajiang Chen",new Double(12345.77));
  tm.put("Magic Ya",new Double(-99.10));
  tm.put("Quanbing Chen",new Double(100.00));

  //Get a set of the entries.
  Set set = tm.entrySet();

  //Get an iterator.
  Iterator i = set.iterator();

  //Display elements.
  while(i.hasNext()){
   Map.Entry me = (Map.Entry)i.next();
   System.out.println(me.getKey() + ": ");
   System.out.println(me.getValue());
  }
  System.out.println();

  //Deposit 1000 into Jiahui Sheng's account
  double balance = ((Double)tm.get("Jiahui Sheng")).doubleValue();
  tm.put("Jiahui Sheng",new Double(balance + 1000));
  System.out.println("Jiahui Sheng's new balance : " + tm.get("Jiahui Sheng"));
 }
}

0
0
分享到:
评论

相关推荐

    List和Treemap排序实例及效率对比

    本资源提供了List对对象中的属性和TreeMap, String>对键值排序,并针对100w条数据排序,对比List和TreeMap, String>排序的效率。个人认为排序效率对比可以相信,但也可能存在不科学之处,还请高手给与指点,多多包涵...

    java 中 TreeMap排序

    在JavaEE中 TreeMap排序的问题

    Java TreeMap排序算法实例

    主要介绍了Java TreeMap排序算法,结合实例形式分析了TreeMap排序算法的原理、实现方法与相关注意事项,需要的朋友可以参考下

    java中TreeMap排序的示例代码

    本篇文章主要介绍了java中TreeMap排序的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    浅谈java中的TreeMap 排序与TreeSet 排序

    下面小编就为大家带来一篇浅谈java中的TreeMap 排序与TreeSet 排序。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    TreeMap按VALUE排序

    TreeMap按VALUE排序

    JAVA使用TreeMap对字符串进行排序

    主要介绍了JAVA使用TreeMap对字符串进行排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    TreeMap<K,V>类以及LinkedList<E>

    编写一个应用程序,使用TreeMap,V&gt;类,分别按照价格和容量排序并输出10个硬盘的详细信息 9_5.编写一个应用程序,要求将LinkedList创建的对象写入到文件,然后读出一个LinkedList对象,并遍历LinkedList节点中的数据

    java集合-TreeMap的使用

    TreeMap是一种基于红黑树实现的有序映射(SortedMap)。它实现了NavigableMap接口,可以按照键的自然顺序或自定义排序规则对键值对进行排序和访问。

    java实现的map排序

    HashMap里面的元素是无序的,要进行排序的话只能是用TreeMap和SortedMap,java实现的map排序

    TreeSe元素t和TreeMap键值不能为null1

    TreeSet元素和TreeMap键值要实现排序功能,所以不能为null,否则会抛出运行时异常。

    词频统计(未排序)

    自然语言理解 关于词频统计的代码 利用treemap来完成

    TreeMap的Java代码

    用一段JAVA程序实现对英文文章的单词统计,以及按照词频排序

    对于java map类排序

    TreeMap, Integer&gt; result = new TreeMap, Integer&gt;() Object[] unsort_key = unsort_map.keySet().toArray(); Arrays.sort(unsort_key); for (int i = 0; i ; i++) { result.put(unsort_key[i].toString(), ...

    HashMap集合排序

    练习TreeMap,创建一个小车类 ,有型号、速度属性,汽车类作为Key,速度作为vauel,先按速度排序,速度一样按型号排:

    java map实例,排序

    java map排序,hashmap,linkedmap,treemap,hashtable

    Android 对Map按key和value分别排序的实例

    TreeMap:基于红黑树(Red-Black tree)的 NavigableMap 实现,该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator 进行排序,具体取决于使用的构造方法。 HashMap的值是没有顺序的,它是按照...

    java中set、list和map的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)...// TreeMap按自己的意愿进行排序,默认按key值升序排序。 另包含一篇网文:在java中使用TreeMap进行中文排序

    Java Map 按照Value排序的实现方法

    Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。这篇文章主要介绍了Java Map 按照Value排序的实现方法,需要的朋友可以参考下

    浅谈JsonObject中的key-value数据解析排序问题

    1、JsonObject中的数据是key-value形式,通过JsonObject的keys方法得到key的迭代器是无序的,要想实现排序,目前只能通过加装一层处理(方法来自Stack Overflow,感谢大神),将key-vlaue放入ThreeMap排序,排序规则...

Global site tag (gtag.js) - Google Analytics