java List對象多字段去重統計數量


public class Test {

public static void main(String[] args) {
Product product1 = new Product("張三", "20", 3);
Product product2 = new Product("張三", "20", 3);
Product product3 = new Product("張三", "20", 3);
Product product4 = new Product("張三", "20", 3);
Product product5 = new Product("張三", "20", 3);

Product product = new Product("張三1", "22", 1);
Product product6 = new Product("張三2", "25", 1);
Product product7 = new Product("張三2", "24", 1);
Product product8 = new Product("張三1", "22", 1);
Product product9 = new Product("張三1", "22", 1);

List<Product> products = new ArrayList<>();
products.add(product1);
products.add(product2);
products.add(product3);
products.add(product4);
products.add(product5);
products.add(product);
products.add(product6);
products.add(product7);
products.add(product8);
products.add(product9);

Map<String, Map<String, List<Product>>> collect = products.stream().collect(Collectors.groupingBy(Product::getName,Collectors.groupingBy(Product::getAge)));
int size = collect.size();
int size1 = collect.values().size();
collect.values().forEach(m1 ->{
m1.values().forEach(m2 -> {
int size2 = m2.size();
for (Product product10 : m2) {
System.out.println(product10.getName()+product10.getAge()+product10.getNum()+"----"+size2);
}
});
});
}
}


免責聲明!

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



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