java new对象相同_new了两个对象地址是相同的,求大佬给解答

问题描述

无聊中写了个测试

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

Employee employee = new Employee();

Employee employee1 = new Employee();

Employee employee2 = new Employee();

Employee employee3 = new Employee();

employee.setEmId("111");

employee1.setEmId("111");

employee2.setEmId("112");

employee3.setEmId("111");

employee3.setLineTime(222);

System.out.println("包含:"+employee);

System.out.println("包含:"+employee1);

ArrayList objects = new ArrayList<>();

objects.add(employee1);

objects.add(employee2);

objects.add(employee3);

if(objects.contains(employee)){

System.out.println("原始:"+objects);

System.out.println("包含:"+employee);

objects.remove(employee);

System.out.println("移除:"+objects);

objects.add(0,employee);

System.out.println("添加:"+objects);

}

}

输出结果:

包含:com.yangxu.market.entity.Employee@983c7d0

包含:com.yangxu.market.entity.Employee@983c7d0

原始:[com.yangxu.market.entity.Employee@983c7d0, com.yangxu.market.entity.Employee@46a38bef, com.yangxu.market.entity.Employee@983c8ae]

包含:com.yangxu.market.entity.Employee@983c7d0

移除:[com.yangxu.market.entity.Employee@46a38bef, com.yangxu.market.entity.Employee@983c8ae]

添加:[com.yangxu.market.entity.Employee@983c7d0, com.yangxu.market.entity.Employee@46a38bef, com.yangxu.market.entity.Employee@983c8ae]

你期待的结果是什么?实际看到的错误信息又是什么?

为什么new的两个新对象,会使用同一个地址??

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值