public class GetDistinctIntegerSquares
1: //GetDistinctIntegerSquares.java
3: import java.util.ArrayList;
4: import java.util.Arrays;
5: import java.util.List;
6: import java.util.stream.Collectors;
8: public class GetDistinctIntegerSquares
9: {
10: public static void main(String args[])
11: {
12: //We will produce a list of distinct squares of the integers
13: //in following list of integers:
14: List<Integer> integers = Arrays.asList(3, 2, 2, 3, 7, 3, 5);
15: System.out.println("\nList of integers: " + integers);
17: System.out.println("\n=============");
18: System.out.println("Using Java 7: ");
20: List<Integer> squaresList = new ArrayList<Integer>();
21: for (Integer integer : integers)
22: {
23: Integer square = integer * integer;
24: if (!squaresList.contains(square))
25: {
26: squaresList.add(square);
27: }
28: }
29: System.out.println("Distinct integer squares: " + squaresList);
31: System.out.println("\n=============");
32: System.out.println("Using Java 8: ");
33: System.out.println
34: (
35: "Distinct integer squares: " + integers
36: .stream()
37: .map(i -> i * i)
38: .distinct()
39: .collect(Collectors.toList())
40: );
41: }
42: }
43: /* Output:
45: List of integers: [3, 2, 2, 3, 7, 3, 5]
47: =============
48: Using Java 7:
49: Distinct integer squares: [9, 4, 49, 25]
51: =============
52: Using Java 8:
53: Distinct integer squares: [9, 4, 49, 25]
54: */