积木工具箱 发表于 2021-12-9 11:20

java list求解

有a b两个list<String>

如何实现and 和 or

and b数组里面元素如果全在a里面可以找到就返回真

or b数组里面的元素可以在a数组里找到一个就返回真

list有没有什么方法可以直接实现这个

小飞鸟 发表于 2021-12-9 11:27

java list 取交集和并集 百度一下吧,自己动手才行.

小公主々 发表于 2021-12-9 11:31

retainAll();
addAll();

大方 发表于 2021-12-9 11:40

public static List<Element> retainElementList(List<List<Element>> elementLists) {
   
      Optional<List<Element>> result = elementLists.parallelStream()
            .filter(elementList -> elementList != null && ((List) elementList).size() != 0)
            .reduce((a, b) -> {
                a.retainAll(b);
                return a;
      });
      return result.orElse(new ArrayList<>());
    }

缘浅丶 发表于 2021-12-9 11:53

本帖最后由 缘浅丶 于 2021-12-9 13:33 编辑

    public boolean and(List<String> listB){
      return listA.containsAll(listB);
    }

    public boolean or(List<String> listB){
      for (String string:listB){
            if(listA.contains(string)){
                return true;
            }
      }
      return false;
    }

缘浅丶 发表于 2021-12-9 11:54

本帖最后由 缘浅丶 于 2021-12-9 13:33 编辑

    public boolean and(List<String> listB){
      return listA.containsAll(listB);
    }

    public boolean or(List<String> listB){
      for (String string:listB){
            if(listA.contains(string)){
                return true;
            }
      }
      return false;
    }

你猜啊 发表于 2021-12-9 15:34

/**
   * 获取两个集合的交集
   *
   * @Param c1
   * @param c2
   * @return
   */
    public static <T> List<T> getInterSection(Collection<T> c1, Collection<T> c2) {
      Set<T> intersections = Sets.intersection(Sets.newHashSet(c1), Sets.newHashSet(c2));
      return Lists.newArrayList(intersections);
    }

    /**
   * 获取两个集合的合集
   *
   * @param c1
   * @param c2
   * @return
   */
    public static <T> List<T> getUnionSection(Collection<T> c1, Collection<T> c2) {
      c1.addAll(c2);
      Set<T> newHashSet = Sets.newHashSet(c1);
      return Lists.newArrayList(newHashSet);
    }

chengxuyuan01 发表于 2021-12-11 10:20

循环是最简单的,但是你说集合有没有直接的内置方法我就不清楚了,没遇到过这种需求
页: [1]
查看完整版本: java list求解