java.util.AbstractMap
2016-12-09 00:00
453 查看
今天在看java合并两个Map发现了这个抽象类,然后就发现了一个很有趣的方法,直接扔异常?
说这个之前,顺便说下putAll方法
这个其实没什么好说的,就是for循环。
继续说上面的UnsupportedOperationException 直接翻译就是不支持的操作异常
百度了一下也没看到是什么结果,联想到这是一个抽象类,然后又看了看HashMap的方法
这个意思就是说Map的实现类必须重写put?本人是这么理解的。
public V put(K key, V value) { throw new UnsupportedOperationException(); }
说这个之前,顺便说下putAll方法
public void putAll(Map<? extends K, ? extends V> m) { for (Map.Entry<? extends K, ? extends V> e : m.entrySet()) put(e.getKey(), e.getValue()); }
这个其实没什么好说的,就是for循环。
继续说上面的UnsupportedOperationException 直接翻译就是不支持的操作异常
百度了一下也没看到是什么结果,联想到这是一个抽象类,然后又看了看HashMap的方法
public V put(K key, V value) { if (table == EMPTY_TABLE) { inflateTable(threshold); } if (key == null) return putForNullKey(value); int hash = hash(key); int i = indexFor(hash, table.length); for (Entry<K,V> e = table[i]; e != null; e = e.next) { Object k; if (e.hash == hash && ((k = e.key) == key || key.equals(k))) { V oldValue = e.value; e.value = value; e.recordAccess(this); return oldValue; } } modCount++; addEntry(hash, key, value, i); return null; }
这个意思就是说Map的实现类必须重写put?本人是这么理解的。
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android Google Map获取地理位置信息的方法
- Debian 7.x 安装Oracle JAVA
- springmvc实现url路由功能
- spring boot 配置 druid/** * 配置druid * Created by adam on 4/11/16. */ @Configuration public class D
- api接口rsa加密
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法