【发布时间】:2018-12-22 18:28:03
【问题描述】:
我想了解 Java 集合和可变元素增长的默认大小和阈值。
我创建了一个简单的程序来声明它们,并在最后一个 SysOut 语句中添加了一个调试器,然后检查了引用。
我已经评论了调查结果,但想详细了解 LoadFactor 和 Thresholds,如果有人可以提供简单易懂的解释。
以下是我用来获取结果的程序 -
public class CollectionInfo {
public static void main(String[] args) {
Map<Integer,String> hashMap = new HashMap<>();
Map<Integer,String> linkedHashMap = new LinkedHashMap<>();
Map<Integer,String> treeMap = new TreeMap<>();
Set<String> hashSet = new HashSet();
Set<String> linkedhashSet = new LinkedHashSet();
Set<String> treeSet = new TreeSet();
List<String> arrayList = new ArrayList();
List<String> linkedList = new LinkedList();
List<String> vector = new Vector<>();
StringBuilder builder = new StringBuilder();
StringBuffer buffer = new StringBuffer();
//Table - 16, LoadFactor - 12, Threshhold - 0.75
hashMap.put(1, "a");
//Table - 16, LoadFactor - 12, Threshhold - 0.75
linkedHashMap.put(1, "a");
treeMap.put(1, "a");
//Table - 16, LoadFactor - 12, Threshhold - 0.75
hashSet.add("a");
//Table - 16, LoadFactor - 12, Threshhold - 0.75
linkedhashSet.add("a");
treeSet.add("a");
//ElementData - 10
arrayList.add("a");
//Has First and Last
linkedList.add("a");
vector.add("a");
//Size - 16
builder.append("a");
//Size - 16
buffer.append("a");
System.out.println("Added debugger to this line and please inspect the references");
}
}
【问题讨论】:
标签: java string collections