实现数据篮子:多key对应1value,并提供put,get,remove等方法
例如:
key1=“张三”
key1,key2=“李四”
key1,key2,key3=“王五”
…
思路:
1.通过拓展map实现key-value键值对存储
2.put方法可变参数个数为n且至少为2,形如map.put(key1,key2,key3,…,value),key为1到(n-1)参数,第n个为value
3.考虑到前面的n-1个key有序,可以考虑用LinkedList存储所有key记为keyList
4.那么这个特殊的map就相当于keyList=value键值对,即Map<List, Object>
思路捋清楚了,算法片段如下:
public class Bus {
//初始化数据篮子
private static Map<List<Object>, Object> busMap = new HashMap<List<Object>, Object>();
//参数数组
private static Object[] arg;
public Boolean put(Object... args) {
//判断参数个数小于2,添加失败
if (args.length < 2) {
return false;
}
arg = (Object[]) args;
//设置key的集合
List<Object> key = setKey(arg, arg.length