Java-字符容量-capacity()方法:
package com;
import java.util.HashMap;
/**
* Java字符容量capacity()方法:
*
* Java字符容量计算:比如StringBuffer sb=new StringBuffer("Good");输出sb.capacity();长度为20,
*
* 因为StringBuffer在为对象分配长度的时候,起始会分配一个字,也就是两个字节长度即(16位),
*
* 每增加一个字符,长度就会在16的基础上加 1 ;Good 意思: 16+4 = 20
*/
public class Capacitys extends HashMap {
int count;
int threshold ;
float loadFactor;
public Capacitys(int initialCapacity, float loadFactor) {
int capacity = 1;
while (capacity < initialCapacity)
capacity <<= 1;
this.loadFactor = loadFactor;
threshold = (int)(capacity * loadFactor);
Entry[] table = new Entry[capacity];
for (Entry entry :table){
count +=1;
}
System.out.println(count);
}
public static void main(String[] args) {
Capacitys test = new Capacitys(19, 2f);
System.out.println(test.loadFactor + " and "+ test.threshold );
}
}