`
jackroomage
  • 浏览: 1217674 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

求出map排序后第二个位置的key和value

阅读更多

求出map排序后第二个位置的key和value

 

public class TestMap9 {
 public static void main(String[] args){
  
   List list1=new ArrayList();
   List list2=new ArrayList();
   List list3=new ArrayList();
  
     Map map2=new TreeMap();
  
        Map map=new HashMap();
           map.put("b", 6);
           map.put("a", 7);
           map.put("c", 2);
          
           Iterator ite=map.entrySet().iterator();
           while(ite.hasNext()){
             Entry entry=(Entry)ite.next();
             list1.add(entry.getKey());
             Collections.sort(list1);
            
             list2.add(entry.getValue());
             Collections.sort(list2);
           }
          
           for(int i=0;i<map.size();i++){
            map2.put(list1.get(i), list2.get(i));
           }
          
           Iterator itet=map2.entrySet().iterator();
        while(itet.hasNext()){
         Entry entry=(Entry)itet.next();
         list3.add(entry.getKey());
        }
           
    System.out.println(list3.get(1)+"/"+map2.get(list3.get(1)));
 }
}

分享到:
评论

相关推荐

    Java中实现参数名ASCII码从小到大排序(字典序).doc

    这里提供了一个名为`createSign`的方法,它接受一个`Map, Object&gt;`类型的参数,并返回一个字符串,其中包含排序后的键值对。下面是对这个方法的详细解释和扩展知识。 1. **`TreeMap`的使用**: `TreeMap`是Java...

    hadoop分区二次排序示例.zip

    第一个比较器(KeyComparator)负责比较电话号码,第二个比较器(ValueComparator)则用于比较到达时间。这两个比较器都需要继承自`org.apache.hadoop.io.Comparator`,并实现其`compare()`方法。在Job设置中,我们...

    js代码-实现数组的排序后获取相关的key值

    比较函数应该返回一个负数、零或正数,表示第一个参数小于、等于或大于第二个参数。例如: ```javascript function compare(a, b) { if (a ) return -1; if (a &gt; b) return 1; return 0; } ``` 然后,我们可以...

    JAVA_MAP_+_LIST_SET和MAP的区别+_Map的三种遍历方法

    - **Map**:主要用于存储键值对(key-value pairs)。键必须是唯一的,而值可以重复。`Map` 不继承自 `Collection` 接口。 - **List**:有序的集合,可以包含重复元素。 - **Set**:不允许重复元素的集合。 #### 二...

    MapReduce技术原理与实践.pptx

    为了实现更复杂的数据排序需求,如Secondary Sort(二次排序),可以创建自定义的Key类,结合原Key和需要排序的Value生成新的Key。同时,还需要自定义分区函数(Partitioner)、比较器(Comparator)和分组函数...

    java中MAp介绍

    Map的主要功能是存储键值对(key-value pairs),其中键(key)不允许重复,而值(value)可以重复。每个键值对都是唯一的,并且可以通过键来获取其对应的值。 #### 二、Map接口的基本操作 Map接口提供了一系列的...

    vector与map简介_map_资料_vector_

    `std::map`是一种关联容器,它维护了一个排序的元素集合,每个元素都是一个键值对。键通常是唯一的,用于查找元素,而值则与键相关联。`map`使用红黑树实现,确保了插入、查找和删除操作的时间复杂度为O(log n)。 *...

    map总结,原理,使用

    **Map** 是 C++ STL(Standard Template Library)中的一种关联容器,它主要用于存储键值对(Key-Value pairs)。Map 的特点在于它能高效地进行查找、插入和删除操作,并且能够保证键的唯一性。在 C++ 中,`std::map...

    map元素映射,正确使用标准模板库

    可以使用迭代器对map进行遍历,包括begin()和end(),以及rbegin()和rend()(逆序遍历)。 五、map的大小与容量 - `size`:返回元素数量。 - `empty`:判断map是否为空。 - `max_size`:返回map能容纳的最大元素数量...

    map容器实现方法

    在C++标准库中,`map`容器是一个关联容器,它提供了一种通过键(key)来访问元素的方式。`map`容器中的每个元素都包含一个键值对,键是唯一的,而对应的值可以重复。这里我们将深入探讨`map`容器的实现方法,包括其...

    hadoop二次排序的原理和实现方法

    默认的排序方式只能对MapReduce作业的键(Key)进行排序,但有时我们可能需要对键值对中的值(Value)也进行排序,这就是所谓的“二次排序”或“二次归并排序”。二次排序在Hadoop中主要涉及Map、Reduce阶段以及...

    如何用Map对象创建Set对象Java开发Java经验技巧

    在本例中,我们将专注于第二种方法,即从Map对象中获取Set。 1. **获取Map的键集(Key Set):** Map接口提供了`keySet()`方法,该方法返回一个Set视图,包含了Map中的所有键。这个Set不允许插入新的元素,因为它们...

    c语言版map管理系统

    Map是一种关联数组,其内部通过键(key)来索引对应的值(value)。在C语言中,由于没有内置的Map类型,开发者通常需要自定义数据结构来模拟这一功能。一种常见的方式是使用哈希表或红黑树等数据结构。在这个C语言版...

    【c++】——map和set(csdn)————程序.pdf

    1. **键值对**:`map`是关联容器,它存储键值对(key-value),其中键key用于唯一标识元素,值value则与键相关联。键和值可以有不同的类型。 2. **比较器**:默认情况下,键值之间按照小于关系进行比较。对于自定义...

    map的用法.docx

    - `equal_range` 函数用于查找指定键的范围,如果找不到,返回一个迭代器对,其中第二个迭代器等于 `end()`。 在实际应用中,`map` 通常用于创建索引,例如,根据学生的 ID 查找学生的名字。通过熟练掌握 `map` 的...

    php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】

    - `array_diff()` 用于找出两个数组的差异,返回第一个数组中不包含在第二个数组的元素。 - `array_map()` 应用回调函数到数组的所有元素上,返回新的数组。 - `array_filter()` 用于过滤数组元素,根据回调函数...

    实验4SecondSort1

    每个Mapper读取其分配的数据,解析出第一列和第二列的数字,然后以第一列数字作为Key,第二列数字作为Value生成键值对。这里的关键设计思路是确保Key的有序性,以便在Reduce阶段能正确处理。 在Reduce阶段,相同Key...

    2018最新BAT大数据面试题.docx

    - 在Map阶段,每个Map Task会产生一系列按key排序的临时文件(通常使用快速排序)。即使在没有Combiner的情况下,Map Task也会对数据进行排序。 - 这些排序文件最终会被合并成一个排序文件,以便后续处理。 - **...

Global site tag (gtag.js) - Google Analytics