public void set(int key, int value) {
    	Node node = map.get(key);
    	if (capacity == map.size()) {
    		if (null == node) {
    			Node rmn = dlist.removeEnd();
    			map.remove(rmn.key);
    			Node n = new Node(key, value);
    			dlist.add(n);
    			map.put(key, n);
    		} else {
    			Node n = dlist.remove(node);
    			map.remove(key);
    			n.value = value;
    			dlist.add(n);
    			map.put(key, n);
    		}
    	} else {
    		if (null == node) {
    			Node n = new Node(key, value);
    			dlist.add(n);
    			map.put(key, n);
    		} else {
    			Node n = dlist.remove(node);
    			n.value = value;
    			dlist.add(n);
    		}
    	}
    	print();
    }