EN
Java - count distinct values in ArrayList
0 points
In this article, we would like to show you how to count distinct values in ArrayList in Java.
Quick solution:
xxxxxxxxxx
1
Set<String> mySet = new HashSet<>(myArrayList);
2
System.out.println(distinctSet.size());
or
xxxxxxxxxx
1
long unique = myArrayList.stream().distinct().count();
In this example, we create HashSet from the letters
ArrayList to remove duplicates. Then we use size()
method to get the number of unique values in letters
ArrayList.
Practical example:
xxxxxxxxxx
1
import java.util.*;
2
3
public class Example {
4
5
public static void main(String[] args) {
6
List<String> letters = new ArrayList<>();
7
8
letters.add("A");
9
letters.add("A");
10
letters.add("A");
11
12
letters.add("B");
13
letters.add("B");
14
15
letters.add("C");
16
17
Set<String> distinctSet = new HashSet<>(letters); // removes duplicates
18
19
System.out.println("Number of unique values: " + distinctSet.size());
20
}
21
}
Output:
xxxxxxxxxx
1
Number of unique values: 3
In this example, we use stream to count distinct values in letters
ArrayList.
Note: This solution works only for Java 8 version and higher.
Practical example:
xxxxxxxxxx
1
import java.util.*;
2
3
public class Example {
4
5
public static void main(String[] args) {
6
List<String> letters = new ArrayList<>();
7
8
letters.add("A");
9
letters.add("A");
10
letters.add("A");
11
12
letters.add("B");
13
letters.add("B");
14
15
letters.add("C");
16
17
long unique = letters.stream()
18
.distinct()
19
.count();
20
21
System.out.println("Number of unique values: " + unique);
22
}
23
}
Output:
xxxxxxxxxx
1
Number of unique values: 3