HashSet 이용해서 중복 제거

Luna·2024년 5월 30일
0

JAVA

목록 보기
33/33

알림을 보내는 기능을 만들 때 수신자의 ID값을 List<String>으로 담고나서 여러번 알림이 가는걸 방지 위해 아래 코드와 같이 중복 제거를 했었다.

List<String> Ids = new ArrayList<>();

for (Bean data : dataList) {
	Ids.add(data.getId());
}

Ids = Ids.stream().distinct().collect(Collectors.toList());

근데 이렇게 하는 것 보다 애초에 리스트를 담는 과정에서 중복을 제거하는 게 나을 것 같아서 HashSet을 쓴 다음 List 타입으로 변환하는 방법을 택했다.

Set<String> Ids = new HashSet<>();

for (Bean data : dataList)  {
	Ids.add(data.getId());
}

List<String> idList = new ArrayList<>(Ids);

이렇게 하니 성능도 더 나은 것 같고 코드도 깔끔해졌다!

0개의 댓글