1. 단일 값의 중복 값 세기
Collections.frequency()
ℹ️ 특정 컬렉션에서 특정 객체의 빈도를 계산하는 메서드입니다.
- 매개변수
- c: o의 빈도를 결정할 컬렉션
- o: 빈도 결정하려는 대상
- 컬렉션 c가 null인 경우 NullPointerException이 발생합니다.
import java.util.*;
public class GFG
{
public static void main(String[] args)
{
// Let us create a list with 4 items
ArrayList<String> list =
new ArrayList<String>();
list.add("code");
list.add("code");
list.add("quiz");
list.add("code");
// count the frequency of the word "code"
System.out.println("The frequency of the word code is: "+
Collections.frequency(list, "code"));
// The frequency of the word code is: 3 (code 문자열이 리스트에 3번 등장하므로)
}
}
2. 각 값의 빈도 세기
Map<String, Integer> map = new HashMap<String, Integer>()
ℹ️ 값의 빈도를 한 번만 계산하므로 성능면에서 효율적입니다.
import java.util.*;
public class Main {
public static void main(String[] args) {
// 리스트 생성
List<String> list = new ArrayList<>(Arrays.asList("apple", "banana", "apple", "orange", "banana", "apple"));
// 빈도 계산을 위한 Map
Map<String, Integer> frequencyMap = new HashMap<>();
// 각 요소의 빈도를 계산
for (String element : list) {
frequencyMap.put(element, frequencyMap.getOrDefault(element, 0) + 1);
}
// 중복 값만 출력
for (Map.Entry<String, Integer> entry : frequencyMap.entrySet()) {
if (entry.getValue() > 1) {
System.out.println(entry.getKey() + " appears " + entry.getValue() + " times.");
}
}
}
}
- Map<String, Integer> frequencyMap = new HashMap();
- frequencyMap: String 값의 빈도를 저장하는 Map
- HashMap: Map의 인터페이스 구현체
- 빈도 계산
- 추가 필요
Java.util.Collections.frequency() in Java - GeeksforGeeks
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
www.geeksforgeeks.org
반응형