Home > Java > javaTutorial > Why does `c == d` return `true` for `Integer c = 100` and `Integer d = 100` in Java?

Why does `c == d` return `true` for `Integer c = 100` and `Integer d = 100` in Java?

DDD
Release: 2024-12-08 00:43:16
Original
855 people have browsed it

Why does `c == d` return `true` for `Integer c = 100` and `Integer d = 100` in Java?

Integer Caching in Java

Query:

In Java, why does the comparison c == d evaluate to true despite being distinct Integer objects (c = 100 and d = 100)?

Response:

To enhance performance and memory utilization, Java employs a cache for integer objects within the range of -128 to 127. Consequently, c and d refer to the same cached instance.

Purpose of the Optimization:

  • Memory Conservation: By caching common integer values, Java saves substantial memory space compared to creating separate objects for each distinct value.
  • Cache Efficiency: Caching frequently used integer values improves cache performance by minimizing cache misses.

Benefits:

  • Enhanced Performance: Reduced memory consumption and improved cache efficiency lead to faster code execution.
  • Optimized Memory Utilization: Caching integers frees up valuable memory resources for other applications.

Research

The following references provide further insights into this topic:

  • [Java Platform SE 8 Language Specification](https://docs.oracle.com/javase/specs/jls/se8/html/jls-5.html#jls-5.1.7)
  • [Autoboxing Tutorial](https://docs.oracle.com/javase/tutorial/java/data/autoboxing.html)

The above is the detailed content of Why does `c == d` return `true` for `Integer c = 100` and `Integer d = 100` in Java?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template