gpt4 book ai didi

java - 不明白这个 HashMap 增量语法

转载 作者:行者123 更新时间:2023-12-01 07:24:23 26 4
gpt4 key购买 nike

h 是一个 HashMap (通用类型字符、整数)。第一个示例有效,但第二个示例抛出错误结果(未正确递增)。为什么?

正确

if (h.containsKey(c)) {
h.put(c, h.get(c)+1);
}
else {
h.put(c, 1);
}

错误

if (h.containsKey(c)) {
int value = h.get(c);
h.put(c, value++);
}
else {
h.put(c, 1);
}

最佳答案

您正在使用后递增,您的变量被传递给函数,并且仅在递增之后

 h.put(c, ++value);

这是预递增的语法,它在将变量传递给 get 调用之前递增变量

关于java - 不明白这个 HashMap 增量语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27879686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com