题解 | #合并表记录#
合并表记录
http://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
import java.util.Map;
import java.util.Scanner;
public class test{
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
Map<Integer, Integer> table = new HashMap<>(n);
/*
*Map接口中键和值一一映射,可以通过键来获取值
* void clear(),从映射关系中移除所有映射关系(可选操作)
* boolean containsKey(Object k),如果此映射关系包含指定键的映射关系,则返回true
* boolean containsValue(Object v),如果次映射关系映射一个或多个映射到指定值,则返回true
* Object get(Object k),返回指定键所映射的值,如果没有则会返回null
* Object put(Object k,Object V),将指定的值与映射中的指定键关联
* Object remove(Object k),如果存在一个键的映射关系,则将其从此映射关系中移除(可选操作)
* int size() ,返回此映射中的键-值映射关系数
* */
for (int i = 0; i < n; i++) {
int key = scanner.nextInt();
int value = scanner.nextInt();
if (table.containsKey(key)) {
table.put(key, table.get(key) + value);
} else {
table.put(key, value);
}
}
for (Integer key : table.keySet()) {
System.out.println( key + " " + table.get(key));
}
}
}