全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

基于java中两个对象属性的比较

两个对象进行比较相等,有两种做法:

1、情况一:当仅仅只是判断两个对象是否相等时,只需重写equals()方法即可。这里就不用说明

2、情况二:当除了情况一之外,还需知道是那个属性不同,那么就需要采用类反射,

具体代码如下:

public static void main(String[] args) {
A a = new A();
a.setUserName("a");
a.setPassword("p");
a.setQq("q");
a.setWechat("w");
 A b = new A();
 b.setUserName("a");
 b.setPassword("p");
 b.setQq("q");
 b.setWechat("ww");

 //只是比较两个对象是否相等,那么直接重写equals方法
 System.out.println( a.equals(b));

 try {
  Map<String, String> maps = compare( a, b );
  System.out.println();
 } catch (Exception e) {
  e.printStackTrace();
 }
}


public static <T> Map<String, String> compare(T obj1, T Obj2)
  throws Exception {

 Map<String, String> result = new HashMap<String, String>();

 Field[] fs = obj1.getClass().getDeclaredFields();
 for (Field f : fs) {
  f.setAccessible(true);
  Object v1 = f.get(obj1);
  Object v2 = f.get(Obj2);
  if( ! equals(v1, v2) ){
   result.put(f.getName(), String.valueOf(equals(v1, v2)));

  }
 }
 return result;
}

public static boolean equals(Object obj1, Object obj2) {

 if (obj1 == obj2) {
  return true;
 }
 if (obj1 == null || obj2 == null) {
  return false;
 }
 return obj1.equals(obj2);
}

以上这篇基于java中两个对象属性的比较就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# java  # 对象属性比较  # Java比较两个对象大小的三种方法详解  # Java比较对象大小两种常用方法  # Java比较两个对象是否相等的方法  # Java各种比较对象的方式的对比总结  # 在Java中如何比较两个对象浅析  # Java中对象的比较操作实例分析  # Java 中比较对象的用法小结  # JAVA中对象常见的几种方法比较  # 给大家  # 重写  # 只需  # 希望能  # 这篇  # 有两种  # 还需  # 小编  # 大家多多  # String  # args  # Map  # static  # void  # main  # setUserName  # ww  # setQq  # setWechat  # println 


相关文章: 行程制作网站有哪些,第三方机票电子行程单怎么开?  网站制作企业,网站的banner和导航栏是指什么?  长沙做网站要多少钱,长沙国安网络怎么样?  如何通过远程VPS快速搭建个人网站?  用v-html解决Vue.js渲染中html标签不被解析的问题  东莞专业制作网站的公司,东莞大学生网的网址是什么?  如何在云指建站中生成FTP站点?  SQL查询语句优化的实用方法总结  建站之星logo尺寸如何设置最合适?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  如何在阿里云虚拟服务器快速搭建网站?  建站之星如何通过成品分离优化网站效率?  网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  小建面朝正北,A点实际方位是否存在偏差?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  Swift开发中switch语句值绑定模式  javascript中对象的定义、使用以及对象和原型链操作小结  制作网站公司那家好,网络公司是做什么的?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何在Windows环境下新建FTP站点并设置权限?  高防服务器租用首荐平台,企业级优惠套餐快速部署  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何在云主机快速搭建网站站点?  想学网站制作怎么学,建立一个网站要花费多少?  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  建站之星如何快速更换网站模板?  如何快速搭建高效可靠的建站解决方案?  大连网站制作公司哪家好一点,大连买房网站哪个好?  江苏网站制作公司有哪些,江苏书法考级官方网站?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  ,想在网上投简历,哪几个网站比较好?  Android自定义listview布局实现上拉加载下拉刷新功能  建站之星云端配置指南:模板选择与SEO优化一键生成  北京企业网站设计制作公司,北京铁路集团官方网站?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  PHP 500报错的快速解决方法  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  如何通过wdcp面板快速创建网站?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  如何在阿里云完成域名注册与建站?  如何正确下载安装西数主机建站助手?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。