3
回答
JDK的 HashMap类中有点不解的地方
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

JDK的 HashMap类中有点不解的地方

/**
     * The default initial capacity - MUST be a power of two.
     */
    static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16

    /**
     * The maximum capacity, used if a higher value is implicitly specified
     * by either of the constructors with arguments.
     * MUST be a power of two <= 1<<30.
     */
    static final int MAXIMUM_CAPACITY = 1 << 30;



定义的静态常量,为什么不直赋值,而是搞个左移位赋值呢,比如

static final int DEFAULT_INITIAL_CAPACITY = 16;
不是更好吗,因为可以省下位算术左移操作





举报
sea
发帖于2年前 3回/248阅
顶部