最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于java中兩個對象屬性的比較

 更新時間:2017年09月29日 08:36:44   作者:HeavenTang  
下面小編就為大家?guī)硪黄趈ava中兩個對象屬性的比較。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

兩個對象進行比較相等,有兩種做法:

1、情況一:當(dāng)僅僅只是判斷兩個對象是否相等時,只需重寫equals()方法即可。這里就不用說明

2、情況二:當(dāng)除了情況一之外,還需知道是那個屬性不同,那么就需要采用類反射,

具體代碼如下:

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中兩個對象屬性的比較就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 總結(jié)Java常用到的六個加密技術(shù)和代碼

    總結(jié)Java常用到的六個加密技術(shù)和代碼

    大家要記住現(xiàn)代密碼學(xué)最重要的原則柯克霍夫原則:數(shù)據(jù)的安全基于密鑰而不是算法的保密。也就是說即使密碼系統(tǒng)的任何細節(jié)已為人悉知,只要密匙未洩漏,它也應(yīng)是安全的。這篇文章給大家介紹了6個常用的加密技術(shù)和代碼。
    2016-07-07
  • Java中日期格式化YYYY-DD的操作bug

    Java中日期格式化YYYY-DD的操作bug

    這篇文章主要介紹了Java中日期格式化YYYY-DD中遇到的坑,本文給大家分享到腳本之家平臺,需要的朋友可以參考下
    2020-01-01
  • springboot啟動前執(zhí)行方法的四種方式總結(jié)

    springboot啟動前執(zhí)行方法的四種方式總結(jié)

    這篇文章主要給大家介紹了關(guān)于springboot啟動前執(zhí)行方法的四種方式,文中通過實例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-01-01
  • SpringBoot項目部署到Tomcat的最新步驟

    SpringBoot項目部署到Tomcat的最新步驟

    通過使用Spring Boot應(yīng)用程序,我們可以創(chuàng)建一個war文件來部署到Web服務(wù)器中,這篇文章主要給大家介紹了關(guān)于SpringBoot項目部署到Tomcat的最新步驟,需要的朋友可以參考下
    2024-01-01
  • Java批量導(dǎo)出word壓縮后的zip文件案例

    Java批量導(dǎo)出word壓縮后的zip文件案例

    這篇文章主要介紹了Java批量導(dǎo)出word壓縮后的zip文件案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Java 后端開發(fā)中Tomcat服務(wù)器運行不了的五種解決方案

    Java 后端開發(fā)中Tomcat服務(wù)器運行不了的五種解決方案

    tomcat是在使用Java編程語言開發(fā)服務(wù)端技術(shù)使用最廣泛的服務(wù)器之一,但經(jīng)常在開發(fā)項目的時候會出現(xiàn)運行不了的情況,這里總結(jié)出幾種能解決的辦法
    2021-10-10
  • java高級應(yīng)用:線程池的全面講解(干貨)

    java高級應(yīng)用:線程池的全面講解(干貨)

    這篇文章主要介紹了java高級應(yīng)用:線程池的全面講解(干貨),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java常見問題之javac Hello.java找不到文件的解決方法

    Java常見問題之javac Hello.java找不到文件的解決方法

    剛開始編寫java代碼時,肯定會遇到各種各樣的bug,當(dāng)然對于初學(xué)者這也是能理解的,下面這篇文章主要給大家介紹了關(guān)于Java常見問題之javac Hello.java找不到文件解決的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下。
    2018-01-01
  • 深入解析Java NIO在高并發(fā)場景下的性能優(yōu)化實踐指南

    深入解析Java NIO在高并發(fā)場景下的性能優(yōu)化實踐指南

    隨著互聯(lián)網(wǎng)業(yè)務(wù)不斷演進,對高并發(fā)、低延時網(wǎng)絡(luò)服務(wù)的需求日益增長,本文將深入解析Java NIO在高并發(fā)場景下的性能優(yōu)化方法,希望對大家有所幫助
    2025-08-08
  • formfile文件上傳使用示例

    formfile文件上傳使用示例

    這篇文章主要介紹了formfile文件上傳使用示例,代碼已加注釋,需要的朋友可以參考下
    2014-03-03

最新評論

元阳县| 红河县| 新闻| 高碑店市| 蓬溪县| 增城市| 阳谷县| 泗水县| 灌南县| 吴桥县| 曲水县| 丹寨县| 洪江市| 兴化市| 泽普县| 清镇市| 武夷山市| 宿州市| 顺义区| 玉溪市| 栖霞市| 台安县| 榕江县| 阿城市| 镇康县| 修水县| 张掖市| 余江县| 双柏县| 黎城县| 江西省| 武隆县| 连山| 滁州市| 封开县| 读书| 香格里拉县| 两当县| 邵武市| 平乐县| 蒙自县|