在方法中使用binarySearch

时间:2015-05-02 06:36:53

标签: java binary-search

它给了我错误,因为方法indexOf(key)具有int返回类型,这是可以理解的。所有方法都是如果找到key,那么用给定的value替换现有的value。如果key不存在,则按排序顺序将密钥放入密钥列表中,并在同一位置添加值

1 个答案:

答案 0 :(得分:0)

要获取使用二进制搜索获取索引所需的密钥,然后使用该索引获取实际密钥:

public V put(K key, V value) 
 {
     int keyIndex = this.indexOf(key);
     K getKey = keys.get(keyIndex);
     for(int i = 0; i < keys.size(); i++)
     {
         if(getKey == keys.get(i))
         {
             keys.set(i, (K) value);
         }
         else 
         {
             keys.add(getKey);
             vals.add(value);
         }
     } 
     return value;
 }