通过使用泛型方法和Set来表达数学中的表达式:集合的交并补。在下面三个方法中都将第一个參数Set复制了一份,并未直接改动參数中Set。
package Set;

import java.util.HashSet;
import java.util.Set;

public class Sets {
	public  static <T> Set<T> intersection(Set<T> s1, Set<T> s2) {
		Set<T> result = new HashSet<T>(s1);
		result.retainAll(s2);
		return result;
	}

	public  static <T> Set<T> union(Set<T> s1, Set<T> s2) {
		Set<T> result = new HashSet<T>(s1);
		result.addAll(s2);
		return result;
	}
	
	//Subtract subset from superset
	public  static <T> Set<T> difference (Set<T> superset, Set<T> subset) {
		Set<T> result = new HashSet<T>(superset);
		result.addAll(subset);
		return result;
	}
	
	//Reflexive --everything not in their intersection
	public static <T> Set<T> complement(Set<T>s1,Set<T> s2){
		return difference(union(s1,s2),intersection(s1,s2));
	}
}

相关文章:

  • 2021-12-01
  • 2021-11-02
  • 2022-12-23
  • 2021-07-09
  • 2021-07-06
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-19
  • 2021-09-11
  • 2022-12-23
  • 2022-12-23
  • 2021-09-07
  • 2021-11-10
  • 2021-06-15
相关资源
相似解决方案