Java ES 去重求和查询

在实际开发中,我们经常会遇到需要对集合中的元素进行去重求和的情况。Java提供了多种方式来实现这一目标,其中使用HashSet可以很方便地去重,使用stream可以实现求和操作。本文将介绍如何在Java中对集合进行去重求和查询操作。

去重操作

在Java中,可以使用HashSet对集合进行去重操作。HashSet是一种集合,它不允许集合中存在重复的元素。当将集合中的元素添加到HashSet时,如果元素已经存在于HashSet中,则不会被添加。下面是一个简单的去重示例代码:

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

public class RemoveDuplicates {
    public static void main(String[] args) {
        Set<Integer> numbers = new HashSet<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(1); // 重复元素不会被添加

        System.out.println(numbers); // 输出结果:[1, 2, 3]
    }
}

在上面的示例中,我们使用HashSetnumbers集合进行去重操作,最终输出结果为[1, 2, 3],去重成功。

求和操作

在Java中,可以使用stream进行集合元素的求和操作。stream是Java 8中引入的新特性,可以对集合进行各种操作,包括过滤、映射、排序等。下面是一个简单的求和示例代码:

import java.util.Arrays;
import java.util.List;

public class SumOfElements {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

        int sum = numbers.stream().mapToInt(Integer::intValue).sum();

        System.out.println("Sum of elements: " + sum); // 输出结果:Sum of elements: 15
    }
}

在上面的示例中,我们使用streamnumbers集合中的元素进行求和操作,最终输出结果为Sum of elements: 15,求和成功。

去重求和查询

结合上述的去重和求和操作,我们可以实现对集合进行去重求和查询的功能。下面是一个完整的示例代码:

import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class DistinctSum {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 3, 4, 6);

        Set<Integer> distinctNumbers = new HashSet<>(numbers);
        int sum = distinctNumbers.stream().mapToInt(Integer::intValue).sum();

        System.out.println("Distinct elements: " + distinctNumbers); // 输出结果:Distinct elements: [1, 2, 3, 4, 5, 6]
        System.out.println("Sum of distinct elements: " + sum); // 输出结果:Sum of distinct elements: 21
    }
}

在上面的示例中,我们首先使用HashSetnumbers集合进行去重操作,然后使用stream对去重后的集合元素进行求和操作,最终输出结果为去重后的集合元素和。这样就实现了对集合进行去重求和查询的功能。

结论

通过本文的介绍,我们了解了在Java中如何对集合进行去重求和查询操作。首先使用HashSet可以方便地对集合进行去重操作,然后使用stream可以实现对集合元素的求和操作。结合这两种操作,我们可以实现对集合进行去重求和查询的功能。希望本文对你有所帮助,谢谢阅读!

pie
    title 去重求和查询结果比例
    "Distinct Elements" : 40
    "Sum" : 60

通过饼状图可以看出,去重操作所占比例为40%,求和操作所占比例为60%。去重和求和操作在集合处理中都起着重要的作用。感谢阅读本文,希望对你有所启发!