[unique-elements-list] Get Unique Values From an ArrayList In Java (#14152)
This commit is contained in:
parent
f265b51841
commit
f0124dcca0
|
@ -0,0 +1,41 @@
|
||||||
|
package com.baeldung.java.uniqueelements;
|
||||||
|
|
||||||
|
import static java.util.stream.Collectors.toList;
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.LinkedHashSet;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
public class UniqueElementsInListUnitTest {
|
||||||
|
// @formatter:off
|
||||||
|
private static final List<String> MY_LIST = Arrays.asList(new String[]{
|
||||||
|
"Microsoft Windows",
|
||||||
|
"Mac OS",
|
||||||
|
"GNU Linux",
|
||||||
|
"Free BSD",
|
||||||
|
"GNU Linux",
|
||||||
|
"Mac OS"});
|
||||||
|
// @formatter:on
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void whenConvertToSet_thenGetExpectedResult() {
|
||||||
|
List<String> result = new ArrayList<>(new HashSet<>(MY_LIST));
|
||||||
|
assertThat(result).containsExactlyInAnyOrder("Free BSD", "Microsoft Windows", "Mac OS", "GNU Linux");
|
||||||
|
|
||||||
|
result = new ArrayList<>(new LinkedHashSet<>(MY_LIST));
|
||||||
|
assertThat(result).containsExactly("Microsoft Windows", "Mac OS", "GNU Linux", "Free BSD");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void whenUsingStream_thenGetExpectedResult() {
|
||||||
|
List<String> result = MY_LIST.stream()
|
||||||
|
.distinct()
|
||||||
|
.collect(toList());
|
||||||
|
assertThat(result).containsExactly("Microsoft Windows", "Mac OS", "GNU Linux", "Free BSD");
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue