当前位置: 首页 > 知识库问答 >
问题:

Java对某些对象使用相同的引用,但有时会创建两个实例[重复]

宋经赋
2023-03-14
public class Question2 {


    public static void main(String[] args) {
        Integer i1 = 1000;
        Integer i2 = 1000;
        Integer i3 = 10;
        Integer i4 = 10;
        System.out.println(i1 == i2);
        System.out.println(i3 == i4);

    }
}

输出为

false
true

共有1个答案

宗安翔
2023-03-14

Integer使用整数缓存存储从-128到+127的值。如果使用==运算符检查-128到127之间的任何值,则返回true。对于这些值以外的值,如果您尝试了这样的操作,则返回false,

   Integer i1 = 1000;
    Integer i2 = 1000;
    Integer i3 = new Integer(10);
    Integer i4 = new Integer(10);
    System.out.println(i1 == i2);
    System.out.println(i3 == i4);

输出:

  false
  false
 类似资料:
  • 我的问题是,它似乎影响和删除相同的元素从原来的列表!

  • 我有两个java对象是从同一个类实例化的。 既然它是同一类型的,那么它不应该执行“if”部分中的语句吗?

  • 本文向大家介绍创建一个对象用什么运算符?对象实体与对象引用有何不同?相关面试题,主要包含被问及创建一个对象用什么运算符?对象实体与对象引用有何不同?时的应答技巧和注意事项,需要的朋友参考一下 new运算符,new创建对象实例(对象实例在堆内存中),对象引用指向对象实例(对象引用存放在栈内存中)。 一个对象引用可以指向0个或1个对象(一根绳子可以不系气球,也可以系一个气球); 一个对象可以有n个引用

  • 使用saveOrUpdate创建新的ebject时,hibernate将对象存储在数据库中并正确返回。但在方法的同一调用中创建了一个带有一些空列的附加对象。 数据库中的对象如下所示: 这是数据类: 这是我将对象存储到数据库的方式:public class DataUtils{private Session Session;private static DataUtils DataUtils; 和我

  • 但是,这并不适用于String类。请参见下面的代码: 这是因为字符串类和自声明类之间的差异吗?谢谢你的帮助!

  • 我有一个平面文件阅读器类,它从dat文件中读取,创建存储在其唯一arraylist中的person、customer和product对象,我必须将其用于getInvoice方法。当从invoice dat文件中输入新属性时,我只为从invoice dat文件中读取的产品创建一个新的产品列表。这似乎运行良好,但是每个发票对象上的一些产品属性正在被更改。 当用product arraylist作为字段