Map集合的关联数组实现

public class AssoiativeArray<K,V>{
     //创建一个二维数组   
    private Object[][] pairs;
    //声明索引
    private int index;
    //确定二维数组含的一维数组的个数
    public AssociativeArray(int length){
        pairs = new Object[length][];
    }
    public void put(K key,V value){
        if(index >= pairs.length)throw new ArraryIndexOutOfBoundException();
        //给二维数组赋值
        pairs[index++] = new Object[]{key,value};
    }
    @SuppressWarnings("unchecked")
    public V get(K key){
        for(int i = 0; i < index; i++){
            if(key.equals(pairs[i][0]))
                return (V)pairs[i][1];
            return null
            
        }
    }
}

 键值对的个数(二维数组的长度)必须确定,长度不可变。

posted @ 2017-11-30 15:21  Wayfo  阅读(548)  评论(0编辑  收藏  举报