小编Ano*_*ous的帖子

Bug:ConcurrentHashMap的构造方法的参数'initialCapacity'?

java.util.concurrent.ConcurrentHashMap的构造方法之一:

public ConcurrentHashMap(int initialCapacity) {
        if (initialCapacity < 0)
            throw new IllegalArgumentException();
        int cap = ((initialCapacity >= (MAXIMUM_CAPACITY >>> 1)) ?
                   MAXIMUM_CAPACITY :
                   tableSizeFor(initialCapacity + (initialCapacity >>> 1) + 1));
        this.sizeCtl = cap;
    }
Run Code Online (Sandbox Code Playgroud)

方法'tableSizeFor(...)'的参数是什么意思?

initialCapacity + (initialCapacity >>> 1) + 1
Run Code Online (Sandbox Code Playgroud)

我认为参数应该是这样的:

(int)(1.0 + (long)initialCapacity / LOAD_FACTOR)
Run Code Online (Sandbox Code Playgroud)

要不就:

initialCapacity
Run Code Online (Sandbox Code Playgroud)

我认为参数表达式是错误的,至少是一个bug.Did我误解了什么?

我向OpenJDK发送了一个错误报告,似乎他们正式确认它很可能是一个bug:https://bugs.openjdk.java.net/browse/JDK-8202422

更新:Doug Lea评论了这个bug,似乎他同意这是一个bug.

java hashmap concurrenthashmap java-8

7
推荐指数
1
解决办法
444
查看次数

“查询字符串参数”是标头的一部分吗?

在http1.1中,当我发出http GET请求:“ https://www.google.com/?name=jack ”时,我可以在chrome调试控制台中看到“查询字符串参数”: 在此输入图像描述

我的问题是:“查询字符串参数”是标头或正文的一部分还是两者都不是?我在HTTP1.1 规范中找不到有关“查询字符串参数”的定义。

rest get http http-get http-headers

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

concurrenthashmap ×1

get ×1

hashmap ×1

http ×1

http-get ×1

http-headers ×1

java ×1

java-8 ×1

rest ×1