集合
风铃峰顶
个人项目经历请搜索:
http://www.haoranhaoshi.top/
展开
-
Java对象、集合相关的工具
import com.google.common.collect.*;import com.sun.istack.internal.NotNull;import lombok.AllArgsConstructor;import lombok.Data;import lombok.EqualsAndHashCode;import lombok.ToString;import org.apache.commons.collections4.CollectionUtils;import org.ap原创 2021-07-05 15:29:28 · 67 阅读 · 0 评论 -
Java 集合扩容、哈希、HashMap、ConcurrentHashMap、红黑树
Vector、HashTable线程安全ArrayList、HashMap线程不安全1.StringBuffer和StringBuilder初始化默认大小为16个字符2.HashMap初始大小默认16,加载因子为0.75,自增为2n3.HashTable初始大小默认11,加载因子为0.75,自增为2n+14.ArrayList初始大小默认10,自增为1.5n5.Vector初始大小默认10,自增为2n解决哈希冲突的方法:开放定址法、再散列函数法(再哈希法)、链地址法(拉链法)。.原创 2020-09-15 15:40:49 · 131 阅读 · 0 评论 -
Java 方法的反射调用,详细实例 (public、no public 与 static、no static搭配)
package com.test.reflect;import java.lang.reflect.Method;/** * 反射测试 * 1、调用反射的static方法时传参object可为null,no static方法需传参所在类的实例 * 2、本类之外调用反射的private、default方法时,方法需setAccessible(true) * 3、本类的子类调用反射的...原创 2020-01-03 10:58:26 · 1536 阅读 · 0 评论 -
List去重、排序操作
// list元素去重 HashSet h = new HashSet(list); list.clear(); list.addAll(h); // list元素属性去重 Map<String, String> map = new HashMap(); for (int i = 0; i < AList.size(); ...原创 2018-11-14 18:53:18 · 1062 阅读 · 0 评论 -
Map第一个key
Map<String, String> result = new HashMap<String, String>(); //Map第一个keyresult.keySet().iterator().next();原创 2018-10-30 10:40:20 · 12142 阅读 · 1 评论 -
Java Map遍历方式中最高效的
Map<String, String> map = new HashMap<>(); map.put("1", "a"); map.put("2", "b"); map.put("3", "c"); map.put("4", "d"); for(Map.Ent原创 2018-10-09 16:31:08 · 3221 阅读 · 1 评论 -
Vector非线程安全
Vector的方法加了同步锁,但对于复合操作未加锁,是非线程安全的。如经典的put-if-absent。if (!vector.contains(element)) vector.add(element);}在contains和add之间有时间间隔,可能导致执行add时,其他线程已经add过,基于错误假设add,导致非线程安全。vector需对符合操作加锁,如: public...原创 2019-08-20 16:00:29 · 300 阅读 · 0 评论