1. 程式人生 > >java積累---------java判斷兩個set裡的物件值完全相同----兩個set中的值是否相等

java積累---------java判斷兩個set裡的物件值完全相同----兩個set中的值是否相等

有時候我們需要判斷set裡的元素值是否完全相同。

使用  set1.equal(set2)和set1==set2的判斷都不能達到我們的目的。

需要自己寫方法來實現,原理就是迴圈set中的元素一個個對比。

程式碼如下:

public static boolean isSetEqual(Set set1, Set set2) {  
    
  if (set1 == null && set2 == null) {  
   return true; // Both are null  
  }  
  
  if (set1 == null || set2 == null || set1.size() != set2.size()  
    || set1.size() == 0 || set2.size() == 0) {  
   return false;  
  }  
    
  Iterator ite1 = set1.iterator();  
  Iterator ite2 = set2.iterator();  
    
  boolean isFullEqual = true;  
    
 while (ite2.hasNext()) {  
   if (!set1.contains(ite2.next())) {  
    isFullEqual = false;  
   }  
  }
    
  return isFullEqual;  
 }