快期末了,真心请教一道期中考试题。
Treemap 那个星期上课没有好好听,现在还不是很理解。这道题目一直都不会,特来请教各位高手。
不知是否是要通过key读取数组然后比较?还是其他方法,望能给出具体code。
谢谢
——————————————————————
编写一个class,使用static method 需要有两个参数:1. 是一个Treemap(从Maps strings 到 Arraylists(ints) )2.是一个String key。 最后返回值需要一个boolean的状态。
public static boolean action(Treemap<String,ArrayList<Integer>> map,String key)
{}
在这个方法中:如果对于key,list中的所有值都大于或者等于0,就返回true
否则返回,false。
如果list是空的,或者对于被给的key没有list 也返回true。
例如:
对于map:{one=[0, 9, 0, 4], three=[-1], two=[4, 0, -2]}
应该返回false。
------解决方案--------------------
Java code
public static boolean action(TreeMap<String,ArrayList<Integer>> map,String key){
ArrayList<Integer> list = map.get(key);
// 如果list是空的,或者对于被给的key没有list 也返回true。
if(list == null || list.size() <= 0){
return true;
}
// 如果对于key,list中的只要有一个<0,就返回false。
for(Integer i : list){
if(i < 0){
return false;
}
}
return true;
}