Java 相等运算符

标签 java memory

<分区>

有什么区别?

public static void main(String[] args){
            Integer integer1=1000;
            Integer integer2=1000;
            System.out.println(integer1==integer2);
        }

结果:错误

public static void main(String[] args){
        Integer integer1=100;
        Integer integer2=100;
        System.out.println(integer1==integer2);
    }

结果:真

我们可以试试!

最佳答案

-128 到 127 之间的所有整数都被缓存,因为它们使用得更频繁。如果您希望第一个示例起作用,请尝试:

    public static void main(String[] args){
        Integer integer1=1000;
        Integer integer2=1000;
        System.out.println(integer1.equals(integer2));
    }

或者,使用 int 而不是 Integer,因为 Integer 是一个对象。

关于Java 相等运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17527669/

相关文章:

java - 如何识别 ItemWriter 中的异常(由 ItemReader、readItem 方法发生)

java - java中不可修改的列表

java - 如何在Maven/Vaadin项目的服务器后台运行Java类?

c# - 是否有 CPU 模拟器或一种方法来查看事物是如何在内存中创建和销毁的

c++ - 将布局映射到内存地址

iPhone 开发 - iPhone 应用程序的内存限制

javascript - 如何通过java程序在运行时在html页面中编写java脚本代码?

java - 线程之间的通信被阻止

java - 不断增加的 CPU 负载从何而来?

objective-c - 所有对象占用的内存量都相似吗? Objective-c