问题:求一个Map中最大的value值,同时列出键,值;?
方法1、
public static void main(String[] args){
Map map=new HashMap();
map.put("d", 761);
map.put("g", 7);
map.put("a", 761);
map.put("c", 34);
int value=0;
String maxKey = null;
List list=new ArrayList();
Iterator ite=map.entrySet().iterator();
while(ite.hasNext()){
Map.Entry entry =(Map.Entry)ite.next();
value = Integer.parseInt(entry.getValue().toString());
list.add(entry.getValue());
Collections.sort(list);
if(value == Integer.parseInt(list.get(list.size()-1).toString())){
maxKey = entry.getKey().toString();
System.out.println(maxKey+"/"+value);
}
}
}
}
// 答案:
// d/761
// a/761
方法2、
public static void main(String[] args) {
Map map=new HashMap();
map.put("d", 761);
map.put("g", 7);
map.put("a", 761);
map.put("c", 34);
Set set=map.keySet();
Iterator it=set.iterator();
int max=0;
while(it.hasNext()){
String key=(String)it.next();
int init=(Integer)map.get(key);
if(max<(Integer)map.get(key)){
max=(Integer)map.get(key);
}
}
List<String> list=test(map,max);
for(String s:list){
System.out.print(s+"/");
System.out.println(max);
}
}
private static List test(Map map, Object o) {
List list=new ArrayList();
Set set=map.keySet();
Iterator it=set.iterator();
while(it.hasNext()){
String key=(String)it.next();
if(o.equals(map.get(key))){
list.add(key);
}
}
return list;
}
}
// 答案:
// d/761
// a/761
分享到:
相关推荐
在这个例子中,输入可能是一个整数序列,我们可以通过读取每一行,将每个整数作为键(Key),值(Value)可以设置为1,表示这个数字出现了一次。 3. **编写Reducer类**:Reducer类接收Mapper的输出,聚合相同键的值...
`entrySet`方法返回一个包含Map中所有映射关系的`Set`视图,每个映射关系是一个`Map.Entry`对象,该对象包含键和值。 示例代码如下: ```java public static void method_3(Map, String> map) { map.put(8, ...
2. **键值对**:Map中的每个元素都是一个键值对,键是唯一的,用于查找对应的值。键可以是任何类型,但必须能转换为哈希值,而值可以是任意类型。 3. **操作方法**:包括`put(key, value)`用于插入或更新键值对,`...
在"成员信息查看和调用"这个子文件中,我们可以推测可能包含了一个示例,演示如何使用Map存储成员信息(例如,用户ID作为键,用户详细信息作为值),以及如何使用JTable来展示和交互这些信息。这可能涉及到创建...
在PHP编程中,`array_column()` 是一个非常实用的内置函数,它允许开发者从多维数组中提取出一列或多列的数据,将其作为一个新的数组返回。这个功能在处理表格数据或者处理数据库查询结果时尤其有用。本文将深入探讨...
Map 是一种双列集合,其中每个元素都包含一个键(Key)和一个值(Value)。Map 的键是唯一的,而值则可以重复。Map 集合的键不允许重复,如果尝试将重复的键与值添加到 Map 中,原有的键对应的值将会被新值替换,...
- `listFiles()`:列出目录下的所有文件和子目录。 - `delete()`:删除文件或目录。 - `renameTo(File dest)`:重命名文件或移动文件。 - **注意事项**: - 处理文件操作时需注意权限问题。 - 文件操作可能会抛...
- **实现**: Shuffler将Mapper的输出按键值分类,并确保具有相同键的所有值都被发送给同一个Reducer。 - **作用**: 通过这种方式,可以简化Reducer的处理逻辑,提高处理效率。 #### 三、Map-Reduce的工作机制 ...
此方法返回一个`java.util.Map`对象,其中键是参数名,对应的值是一个字符串数组,表示该参数的所有值。这提供了一种直接访问所有表单参数及其对应值的方法。与`getParameterValues()`类似,它适用于处理具有相同...
- 在`map()`方法中,我们注意到`writeKey`被初始化为一个固定文本"K",这意味着所有输出的键都将是"K",这并不符合我们的需求,因为我们需要每个键对应一个特定的数值(例如,行号)来保持数据的唯一性。...
题目中提到的`put(Object key, Object value)`方法是`Map`接口中的一个方法,用于向Map中添加或替换键值对。此方法接收两个参数:一个是键,另一个是与该键关联的值。如果Map中已存在相同键,则该键对应的旧值将被新...
2. **`Reducer`**:这是Reduce阶段的接口,你需要实现`reduce()`方法,它接收一组相同的键和对应的值,然后将它们聚合为一个新的值。 3. **`InputFormat`**:这个接口定义了如何将输入数据分割为适合Map任务的记录...
在Mapper阶段,程序读取两个输入文件A和B的内容,将每条记录(例如,日期和字母)作为一个键值对(key-value)输出。Reducer阶段则负责收集相同的键(日期),并将对应的值(字母)进行合并,同时剔除重复的记录。...
HBase将数据存储在行和列族中,每一行都有一个唯一的行键,列族下可以有多个列限定符。 实验要求我们掌握以下几个Java API操作: 1. **列出所有表的信息**:可以使用`HBaseAdmin`类的`list()`方法获取HBase中的...
Map中则提供了键(Key)值(Value)对的一对一的映射结构。 在Collection接口中,List和Set是两个重要的接口。List可以看做是数据结构中的线性表结构,表达一组有序的数据集合。Set集合具有无序和唯一性,经常用于...
而`array_column`函数则是一个非常实用的功能,它能从多维数组中提取出特定列的数据,这对于数据分析和处理非常有用。在这个主题中,我们将深入探讨`for`、`foreach`循环以及`array_column`函数在处理数组时的应用,...
还可以使用`array_map()`对数组的每个元素应用回调函数,`array_filter()`过滤数组中的元素,`array_reduce()`将数组简化为单个值,`array_column()`从多维数组中提取一列。 了解和熟练掌握这些PHP数组函数,将使你...
- 列出哪些应用对象控制不同的图形用户界面(GUI)组件。 - 修改并使用应用程序替代内核类。 - 扩展RunBase框架来创建新的批处理过程。 - 使用Args对象进行信息传输。 #### 引言 AX2012提供了一系列标准系统类,...
Map任务会读取HDFS中的文件,使用自定义的Mapper类对每一行数据进行解析,提取出关键信息,如行键(row key)、列族(column family)、列限定符(column qualifier)和值(value),并以键值对的形式输出。...
WordCount工具是Apache Hadoop生态系统中的一个经典示例程序,用于统计文本文件中各个单词出现的频率。在大数据处理领域,Hadoop是一个广泛使用的开源框架,它提供了分布式存储(HDFS)和分布式计算(MapReduce)的...