Java类赋值的使用方式
Posted 励志SQA女
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java类赋值的使用方式相关的知识,希望对你有一定的参考价值。
Regioninfo regioninfo=new Regioninfo(); regioninfo.setDistance(0); regioninfo.setInside(1); regioninfo.setShopid(2428069); regioninfo.setType(5); regioninfo.setRecalltype(0); regioninfo.setShopname("泼水广场"); Regioninfo regioninfo2=regioninfo; regioninfo2.setDistance(1000);
期望的结果的是regioninfo.getDistance()=0; regioninfo2.getDistance()=1000;
但是运行的结果是:
因为引用传递,变更某个属性会让两个值都发生变化,在内存中两个类公用同一个存储。
如果想直接copy 某个类的属性,但是又有变更的话,可以使用 :BeanUtils.copyProperties(目标类,源类);
Regioninfo regioninfo=new Regioninfo(); regioninfo.setDistance(0); regioninfo.setInside(1); regioninfo.setShopid(2428069); regioninfo.setType(5); regioninfo.setRecalltype(0); regioninfo.setShopname("泼水广场"); Regioninfo regioninfo2=new Regioninfo(); BeanUtils.copyProperties(regioninfo2,regioninfo); regioninfo2.setDistance(10000);
以上是关于Java类赋值的使用方式的主要内容,如果未能解决你的问题,请参考以下文章
elasticsearch代码片段,及工具类SearchEsUtil.java
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段