ArrayList 액터가 있습니다.Java의 ArrayList에 중복 요소가 있는지 확인하는 방법
램, 크리켓, 램, 체스
나는 단지 하나의 대신 중복의 "램"먹고 싶어 :이 배우가 변수 인쇄 할 때, 나는 이런의 출력을 얻을.
ArrayList 액터가 있습니다.Java의 ArrayList에 중복 요소가 있는지 확인하는 방법
램, 크리켓, 램, 체스
나는 단지 하나의 대신 중복의 "램"먹고 싶어 :이 배우가 변수 인쇄 할 때, 나는 이런의 출력을 얻을.
List
대신 Set
을 사용해야합니다. 워드 프로세서
: -
중복 요소가없는 컬렉션입니다. 좀 더 형식적으로, 집합은 e1.equals (e2)와 같은 요소 쌍 e1과 e2를 포함하지 않으며 에서 하나의 null 요소를 포함합니다. 이름에서 알 수 있듯이이 인터페이스는 수학 집합 추상화 을 모델링합니다.
왜 arraylist를 사용합니까? 세트를 사용하십시오.
또는 당신이 있다면 어떤 중복 java.util.Collections.sort를 사용하는 것이 알고 싶다면() 정렬하고 중복
또는
public int getNumOfDuplicates(List<Integer> dupAraay)
{
Set<Integer> yourSet = new HashSet();
int dupFound = 0;
for (Integer yourInt : dupAraay)
{
if (!set1.add(yourInt))
{
dupFound++;
}
}
return dupFound;
}
고유 한 요소를 저장하므로 ArrayList
대신 Set
을 사용하는 것이 좋습니다.
ArrayList<String> values = ... //Your values
HashSet<String> uniqueValues = new HashSet<>(values);
for (String value : uniqueValues) {
... //Do something
}
세트를 사용해야합니다. 특히, 순서가 중요하지 않은 경우 HashSet, LinkedHashSet을 사용하여 도착 순서를 유지할 것을 제안합니다.
다른 이유로 인해 실제로 ArrayList가 필요한 경우 LinkedHashSet에 복사 한 다음 다시 다시 복사하여 중복을 제거 할 수 있습니다. 이는 정렬 및 테스트보다 빠를 가능성이 높습니다.
이 배열 목록에서 사용할 수있는 방법은 자바 문서에 갈 수 있습니다.
'List' 대신'Set'을 사용하면 끝납니다. –
동일 항목 : http://stackoverflow.com/questions/15518107/how-to-check-if-there-are-duplicate-elements-in-an-arraylist-in-java – Foredoomed
@Foredoomed 내가 싫어. 요소를 제거하십시오. 난 그냥 ArrayList에 중복 항목이 있는지 알고 싶습니다. – Prasad