public int get(int key) {
    	int result = -1;
    	Stack<DataPair> temCache = new Stack<DataPair>();
    	
    	for(int i=0;i<this.cacheCap;i++){
    		if(!cache.isEmpty()){
    			DataPair temPair = cache.pop();
        		if(temPair.key==key){
        			result = temPair.val;
        			break;
        		}else{
        			temCache.push(temPair);
        		}
    		}else{
    			break;
    		}
    	}
    	
    	while(!temCache.isEmpty()){
    		cache.push(temCache.pop());
    	}
    	if(result!=-1){
    		cache.push(new DataPair(key,result));
    	}
    	
    	
        return result;
    }