快速设置操作

时间:2018-10-25 01:08:23

标签: swift

let a: Set = [1, 2, 3]
let b: Set = [3, 5, 2]
if ! a.____b) {
   let c:____= a.____(b)
}

从以下选项中拖放以创建新集合“ c”,如果集合“ a”中未包含所有值,则仅包含“ a”和“ b”的通用值b”。

交叉点联合 isSubset(of: isSuperset(of:< / strong>,设置

我刚刚开始,对这个特定的代码部分感到困惑。有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

欢迎光临,迪。我也在学习Swift我自己。 表示“ a和b都相同”的另一种方式是“ a和b的交集”,另一种表示“如果set b中未包含所有set a的值的话”的另一种方式是“ if set a不是集合b的子集”。

final CriteriaBuilder builder = getCriteriaBuilder();
final CriteriaQuery<A_DTO> criteriaQuery = builder.createQuery(A_DTO.class);
final Root<A> aRoot = criteriaQuery.from(A.class);

final Subquery<Long> xSubquery = criteriaQuery.subquery(Long.class);
final Root<X> xRoot = xSubquery.from(X.class);
final Expression<Long> xCount = builder.count(xRoot);
xSubquery.select(xCount);
xSubquery.where(builder.equal(xRoot.get(X_.a).get(A_.aID), aRoot.get(A_.aID)));

criteriaQuery.multiselect(aRoot.get(A_.aID), xSubquery.getSelection());

return getEntityManager().createQuery(criteriaQuery);