
java
文章平均质量分 56
南京大学软工研究生
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java8的Stream最佳实践
从这一篇文章开始,我们会由浅入深,全面的学习stream API的最佳实践(结合我的使用经验),本想一篇写完,但写着写着发现需要写的内容太多了,所以分成一个系列慢慢来说。给大家分享我的经验的同时,也促使我复习每一个细节,大家共同进步。原创 2024-01-21 22:31:43 · 1256 阅读 · 0 评论 -
Timer底层原理
Timer底层原理今天,扒拉了一下ribbon负载均很策略,其中有一个策略是RetryRule,顾名思义就是客户端rpc调用失败时,它会不断地重新请求服务方进行尝试获取数据。思想:在指定时间内不断的重新请求,直到超时。上代码:public Server choose(ILoadBalancer lb, Object key) { long requestTime = System.currentTimeMillis(); // maxRetryMillis:默认500mm long de原创 2022-03-08 17:58:30 · 321 阅读 · 0 评论 -
HashMap、ConcurrentHashMap、HashTable和TreeMap 为啥有的支持key支持null,有的value支持null?
我们可以看出HashMap允许key为null只是一个意外…如下代码所示,每个对象的hash值是根据对象的hashcode码计算出来的。如果对象为null,调用它的hashCode()方法一定会抛出空指针异常。这里我们将map分为两类,一类是并发的ConcurrentHashMap/HashTable等,另一类是非并发的HashMap/TreeMap.线程不安全map,它的Value是可以为null的。使用contains方法我们就可以推断出get方法返回的null代表的是啥意思。原创 2022-11-30 19:15:58 · 1268 阅读 · 0 评论 -
java.util.ConcurrentModificationException
ArrayList使用增强循环for(Object o:ArrayList){//遍历}如果在遍历过程中修改ArrayList的元素则会报此错误。可以使用如下代码代替即可,允许在遍历中修改数据。for(int i=0;i<list.size;i++){ Object o=list.get(i); //此时可以修改对象}...原创 2019-04-26 00:03:41 · 138 阅读 · 0 评论 -
ArrayList源码解析
ArrayList源码解析1、ArrayList的继承关系public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable它继承了AbstractList抽象类,并且实现了L...原创 2019-04-23 22:34:45 · 146 阅读 · 0 评论