假设有 `Integer a = 100;` 和 `Integer b = 100;`, 并且有 `Integer c = 200;` 和 `Integer d = 200;`, 那么以下哪个选项的比较结果是准确的?

答案解析

由于Integer使用了缓存机制,缓存范围为-128到127。 对于 `Integer a = 100;` 和 `Integer b = 100;`,由于100在缓存范围内,`a`和`b`指向同一个对象,所以 `a == b` 为true。对于`Integer c = 200;` 和 `Integer d = 200;`,由于200不在缓存范围内,`c`和`d`分别指向不同的新对象,所以 `c == d` 为false。
正确答案:C
随机推荐
开始刷题