java在在实例化对象时,是放在栈内存,里面存的只是引用,实际成员变量是存在堆内存里,所以直接交换类其实只是复制了一份引用,成员变量的值并没有改变....

public class ParamOfMethodTest {

public static void main(String[] args) {
// TODO Auto-generated method stub
Employee e1 = new Employee(2, 666);
Employee e2 = new Employee(3, 999);
System.out.println("交换之前的参数:");
System.out.println("e1>>>>>" + e1.toString());
System.out.println("e2>>>>>" + e2.toString());
swap(e1, e2);
System.out.println("交换之后的参数:");
System.out.println("e1>>>>>" + e1.toString());
System.out.println("e2>>>>>" + e2.toString());
}

public static void swap(Employee e1, Employee e2) {
int x = e1.getId();
double y = e1.getSalary();

e1.setId(e2.getId());
e1.setSalary(e2.getSalary());

e2.setId(x);
e2.setSalary(y);

}

}

class Employee {
private int id;
private double salary;

public Employee(int id, double salary) {
this.id = id;
this.salary = salary;
}

public void setId(int id) {
this.id = id;
}

public void setSalary(double salary) {
this.salary = salary;
}

public int getId() {
return this.id;
}

public double getSalary() {
return this.salary;
}

public String toString() {
return "员工的编号: " + id + " 工资: " + salary;
}
}

java怎么实现两个对象内容的交换相关推荐

  1. JAVA杂谈 —— 1.2 JS比较两个对象内容是否相同

    JS比较两个对象内容是否相同 -- JAVA 欢迎观看本博客 题目详情 欢迎观看本博客   您好! 这是我编程上遇到的困惑,现在记录下来.如有疏漏与不足之处还请多多指教. 题目详情   在实际开发中, ...

  2. Java:比较两个对象中全部属性值是否相等

    点击关注公众号,实用技术文章及时了解 来源:xiaoer.blog.csdn.net/article/details/85005295 例如下述Java类: import java.io.Serial ...

  3. Java中对比两个对象中属性值[反射、注解]

    在Java中通常要比较两个对象在修改前与修改后的值是否相同,一般我们采用的是反射技术获取对象的get方法[或其他的方法]获取值并做比较.如果系统将修改的属性名称也显示出来,这样就能更直观的显示类中的哪 ...

  4. Java中对两个对象进行比较大小

    在Java中要想对两个对象进行比较大小,需要实现Comparable接口或Comparator接口.String类型的值之所以可以比较大小(汉字根据ANSI值的大小进行比较),是因为String类实现 ...

  5. Java如何校验两个文件内容是相同的?

    欢迎关注方志朋的博客,回复"666"获面试宝典 今天做文件上传功能,需求要求文件内容相同的不能重复上传.感觉这个需求挺简单的就交给了一位刚入行的新同学.等合并代码的时候发现这位同学 ...

  6. 合并两个对象 java_在Java中合并两个对象列表8

    如果要实现equals和hashCode,那么这个方法就在Parent类中.在该类中添加类似的方法 @Override public int hashCode() { return Objects.h ...

  7. java设计把两个字符串的值交换 而不使用中间变量

    public class Test {     public static void main(String[] args) {         String s1 = "aaa" ...

  8. java比较两个对象重写,不重写equals进行两个对象间的深度比较

    背景 我们知道在Java中比较两个对象是否相同,可以有多种方法,最常见的就是 == 和 equals 方法.但是由于==对比的是对象引用本身,因此重写equals才是最常用和可靠的比较两个对象是否相同 ...

  9. 怎么判断两个对象相等

    1.判断两个对象相等,我们要判断他们两个对象的引用地址是否一致 let obj1={a:1 }let obj2={a:1 }console.log(Object.is(obj1, obj2)) // ...

最新文章

  1. Android 图片 OOM问题总结
  2. DefaultListableBeanFactory 对配置lazy-init 属性单态Bean 的预实例化
  3. kali扫描内网ip_Metasploit路由转发实现内网渗透
  4. HH SaaS电商系统的商品销售管理标签功能模块设计
  5. 仪表自定义刻度值_汇总丨工业仪表知识大全和选型参考
  6. 关于ThinkPHP框架项目在二级目录时,__PUBLIC__路径的问题
  7. infiniband, fiber channel,RDMA
  8. html中css层叠样式表(行内样式,内嵌式,外部式)
  9. 2021年01月18号学习产品经理之电商项目从0-1
  10. 目的网络、子网掩码、下一跳例子
  11. LeetCode1153 字符串转化
  12. 趣图 | 程序员的白天 vs 夜晚?
  13. 香农采样定理和奈奎斯特采样定理
  14. 每日任务:1276. 不浪费原料的汉堡制作方案
  15. gsoap参数老是记不住,岁月不饶人
  16. 使用过滤器做一个过滤敏感词实例
  17. 怎样增加混凝土粘聚性_如何改良中低强度等级混凝土粘聚性?看了这篇文章不用愁!...
  18. python实验原理_【python】《统计学原理实验教程(Python)》书中代码实现
  19. 机器人足球仿真第二次作业
  20. 一篇震惊西方世界的中国人的论文!

热门文章

  1. VMware-workstation安装
  2. 在Windows系统下搭建ELK日志分析平台
  3. 多叉树的前序遍历_多叉树的创建和遍历(为Trie树做准备)
  4. 小新触控板不能用了_小新Pad Pro体验----高颜值新青年平板
  5. PHP+MySql获取新添加记录的ID值
  6. 五句话足以改变人生[转]
  7. 黑历史有救了,淘宝可以改账号名了!网友:终于可以“重新做人”了
  8. 150W光速秒充!realme真我GT Neo3正式发布 售价1999元起
  9. 《王者荣耀》回应故障:3个工作日内补发排位赛星积分丢失
  10. 烧光百亿,敢从宝马挖人!中国后台最硬神车,竟惨到卖厂还债?