List集合中的對象判斷某個字段是否重復


  public static void main(String[] args) {
    //判斷是否有重復的問題添加
    List<HealthQuestionInfoReq> healthQuestionInfoReqs = new ArrayList<>();
    HealthQuestionInfoReq healthQuestionInfoReq1 = new HealthQuestionInfoReq();
    HealthQuestionInfoReq healthQuestionInfoReq2 = new HealthQuestionInfoReq();
    healthQuestionInfoReq1.setQuestionName("123");
    healthQuestionInfoReq2.setQuestionName("123");
    healthQuestionInfoReqs.add(healthQuestionInfoReq1);
    healthQuestionInfoReqs.add(healthQuestionInfoReq2);
    HashSet<String> uidSet = new HashSet<>(); //這里泛型里面的類型和你需要判斷是字段類型一致
    healthQuestionInfoReqs.stream().forEach(t->{
      uidSet.add(t.getQuestionName());
    });
    //如果為true說明不相等,如果為false則為相等
    System.out.println( healthQuestionInfoReqs.size() == uidSet.size());
  }

 附上:List集合差集(基於java8新特性)

* 求List1中有的但是List2中沒有的元素

    public static List<String> subList2(List<String> list1, List<String> list2) {
        Map<String, String> tempMap = list2.parallelStream().collect(Collectors.toMap(Function.identity(), Function.identity(), (oldData, newData) -> newData));
        return list1.parallelStream().filter(str -> {
            return !tempMap.containsKey(str);
        }).collect(Collectors.toList());
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM