logo

Java에서 두 ArrayList를 비교하는 방법

Java에서 두 ArrayList를 비교하는 방법은 다음과 같습니다.

  • 자바 같음() 방법
  • 자바 모두 제거() 방법
  • 자바 유지모두() 방법
  • 자바 ArrayList.contains() 방법
  • 자바 콘텐츠Equals() 방법
  • 자바 개울 상호 작용

자바의 equals() 메소드

자바 같음() 의 방법 목록 인터페이스는 지정된 객체를 목록과 비교하여 동일한지 확인합니다. 이는 같음() 의 방법 물체 수업.

통사론

자바의 기본 데이터 유형
 boolean equals(Object o) 

이 방법은 물체 목록과 동일한지 비교합니다. 그것은 반환 진실 지정된 객체가 목록과 같으면 그렇지 않으면 반환됩니다. 거짓 .

다음 예에서는 두 개의 ArrayList를 생성했습니다. 첫 번째 목록 그리고 두 번째 목록 . 다음을 사용하여 두 목록을 비교합니다. 같음() 메서드를 사용하면 true를 반환합니다. 우리는 두 번째 목록 firstList와 secondList 사이의 차이를 만듭니다. 이제 비교를 수행하면 다음이 반환됩니다. 거짓 .

 import java.util.*; public class ComapreArraylistExample1 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(); //adds elements to the arraylist firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Mango'); System.out.println(firstList); //second array list List secondList=new ArrayList(); //adds elements to the arraylist secondList.add('Apple'); secondList.add('Pears'); secondList.add('Guava'); secondList.add('Mango'); System.out.println(secondList); //comparing both lists boolean boolval = firstList.equals(secondList); //returns true because lists are equal System.out.println(boolval); //adding another element in the second list secondList.add('Papaya'); //again comparing both lists boolean bool = firstList.equals(secondList); //returns false because lists are not equal System.out.println(bool); } } 

산출

 [Apple, Pears, Guava, Mango] [Apple, Pears, Guava, Mango] true false 

Java RemoveAll() 메소드(누락된 요소 찾기)

자바 모두 제거() 의 방법 배열목록 클래스는 지정된 컬렉션에 포함된 목록에서 모든 요소를 ​​제거하는 데 사용됩니다. 이는 모두 제거() 의 방법 추상컬렉션 수업.

통사론

 public boolean removeAll(Collection c) 

이 방법은 허용 수집 이 목록에서 제거할 요소가 포함된 매개변수로 사용됩니다. 그것은 반환 진실 호출의 결과로 이 목록이 변경된 경우.

다음 예에서는 두 개의 ArrayList를 만들었습니다. 첫 번째 목록 그리고 두 번째 목록 . 그만큼 모두 제거() 메소드는 두 번째List에도 동일한 요소가 있기 때문에 firstList의 모든 요소를 ​​제거합니다. 파파야 . 그래서, 파파야 에서 누락된 요소입니다. 첫 번째 목록 . 따라서 반환됩니다. 파파야 . 이 메서드는 빈 목록 [] 두 목록에 동일한 요소가 있는 경우.

 import java.util.*; public class ComapreArraylistExample2 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(); //adds elements to the array list firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Peach'); //second array list ArrayList secondList=new ArrayList(); //adds elements to the array list secondList.add('Apple'); secondList.add('Pears'); secondList.add('Papaya'); secondList.add('Peach'); //removes all elements from the first list //returns empty list if all the elements of first list match with elements of second list secondList.removeAll(firstList); //prints the element of second list which does not match with the element of the first list System.out.println(secondList); } } 

산출

 [Papaya] 

존재하지 않는 firstList의 요소를 반환하는 RemoveAll() 메서드의 또 다른 예는 secondList입니다.

 import java.util.*; public class ComapreArraylistExample3 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(Arrays.asList(12, 4, 67, 90, 34)); System.out.println('First array list: '); System.out.println(firstList); //second array list List secondList=new ArrayList(Arrays.asList(12, 4, 67, 0, 34)); System.out.println('Second array list: '); System.out.println(secondList); //returns the common elements in both list firstList.removeAll(secondList); System.out.println('Un-common element of the first list: '); System.out.println(firstList); } } 

산출

 First array list: [12, 4, 67, 90, 34] Second array list: [12, 4, 67, 0, 34] Un-common element of the first list: [90] 

Java keepAll() 메서드(두 목록의 공통 요소 반환)

자바 유지모두() 의 방법 배열목록 클래스는 다른 목록에도 포함된 목록의 요소만 유지합니다. 이는 유지모두() 의 방법 Abstarct컬렉션 수업.

내 모니터 크기 어떻게 알아?

통사론

 public boolean retainAll(Collection c) 

이 방법은 수집 목록에 유지될 요소를 포함하는 매개변수로 사용됩니다. 그것은 반환 진실 호출의 결과로 이 목록이 변경된 경우.

이 예에서는 두 개의 ArrayList를 만들었습니다. 첫 번째 목록 그리고 두 번째 목록 을 사용하여 asList() 의 방법 배열 수업. asList() 메소드는 지정된 배열의 목록 보기를 반환합니다.

 import java.util.*; public class ComapreArraylistExample4 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(Arrays.asList('M', 'W', 'J', 'K', 'T')); System.out.println('First arraylist: '); System.out.println(firstList); //second arraylist List secondList=new ArrayList(Arrays.asList('M', 'W', 'E', 'K', 'T')); System.out.println('Second arraylist: '); System.out.println(secondList); //returns the common elements in both list secondList.retainAll(firstList); System.out.println('Common elements in both list: '); System.out.println(secondList); } } 

산출

 First arraylist: [M, W, J, K, T] Second arraylist: [M, W, E, K, T] Common elements in both list: [M, W, K, T] 

Java ArrayList.contains() 메서드

자바 ArrayList.contains() 메서드는 서로 다른 ArrayList의 두 요소를 비교하는 데 사용됩니다. 자바 ArrayList.contains() 메서드가 포함() 의 방법 추상컬렉션 수업.

통사론

 public boolean contains(Object o) 

이 메소드는 목록에 존재 여부를 확인할 요소를 구문 분석합니다. 그것은 반환 진실 요소가 일치하면 그렇지 않으면 반환됩니다. 거짓 .

이 예에서는 두 개의 ArrayList를 만들었습니다. 첫 번째 목록 그리고 두 번째 목록 ~의 유형. 우리는 다음을 사용하여 이러한 ArrayList를 비교했습니다. 포함() 방법. firstList의 요소가 secondList의 요소와 일치하면 반환됩니다. 그리고 이 값을 세 번째목록 . 마찬가지로 요소가 일치하지 않으면 반환됩니다. 아니요 .

 import java.util.ArrayList; import java.util.Arrays; public class ComapreArraylistExample5 { public static void main(String [] args) { //first arraylist ArrayList firstList= new ArrayList(Arrays.asList('Good', 'Morning', 'Students')); //second arraylist ArrayList secondList= new ArrayList(Arrays.asList('Good', 'Night', 'frineds')); //storing the comparison output in thirdList ArrayList thirdList= new ArrayList(); //iterator using for-each loop for(String tempList : firstList) //tempList is a variable thirdList.add(secondList.contains(tempList) ? 'Yes' : 'No'); System.out.println(thirdList); } } 

산출

 [Yes, No, No] 

자바 contentEquals() 메소드

자바 콘텐츠Equals() 방법은 와 더불어 문자열 버퍼 그리고는 부울 값. 에 속한다 수업.

통사론

 public boolean contentEquals(StringBuffer sb) 

이 메소드는 StringBuffer를 문자열과 비교할 매개변수로 허용합니다. 그것은 반환 진실 문자열이 지정된 StringBuffer와 동일한 문자 시퀀스를 나타내는 경우 그렇지 않으면 반환됩니다. 거짓 .

이 예에서는 두 개의 ArrayList를 만들었습니다. 첫 번째 목록 그리고 두 번째 목록 ~의 유형. 우리는 정적 메소드를 만들었습니다. 비교목록() 두 개의 ArrayList를 구문 분석합니다. ls1 그리고 ls2 인수로 사용하여 다음을 반환합니다. 부울 값. 이 메서드는 목록을 다음으로 변환합니다. . 그만큼 콘텐츠Equals() 메서드는 문자열을 지정된 StringBuffer와 비교합니다.

두 목록 간의 차이를 생성하기 위해 secondList에 또 다른 요소를 추가하고 비교목록() 반환하는 메서드 거짓 .

웹드라이버
 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ComapreArraylistExample6 { //defining method public static boolean compareList(ArrayList ls1, ArrayList ls2) { //converts List into String and checks string are equal or not return ls1.toString().contentEquals(ls2.toString())?true:false; } public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); ArrayList secondList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); System.out.println('When Lists are same: '+compareList(firstList, secondList)); //adding another element to the secondList secondList.add('C++'); //output after adding different element System.out.println('When Lists are not same: '+compareList(firstList, secondList)); } } 

산출

 When Lists are same: true When Lists are not same: false 

자바 스트림 인터페이스

자바 개울 인터페이스입니다. 그것은 속한다 java.util 패키지. 그것은 필터() 주어진 요소를 기반으로 스트림 요소를 필터링하는 방법입니다. 이것은 중급 프로세스.

통사론

 Stream filter(Predicate predicate) 

이 방법은 허용 술부 (기능적 인터페이스)를 인수로 사용하고 결과 요소의 새 스트림을 반환합니다.

수집() 메서드

다음 예에서는 또 다른 방법이 사용됩니다. 모으다() 의 방법 개울 상호 작용.

Collector를 사용하여 이 스트림의 요소에 대해 변경 가능한 축소 작업을 수행합니다. Collector는 수집(Supplier, BiConsumer, BiConsumer)에 대한 인수로 사용되는 함수를 캡슐화합니다. 그것은 허용합니다 재사용 수집 전략 및 수집 작업 구성. 이것은 단말기 작업.

통사론

 R collect(Collector collector) 

Collectors.toList() 메서드

그만큼 toList() 정적 방법이다 수집가 수업. 그것은 속한다 java.util.Stream.Collectors 수업.

통사론

 public static Collector<t, ?, list> toList() </t,>

어디 요소의 유형입니다. 그것은 수집기 이는 모든 입력 요소를 발생(순서화되지 않은) 순서로 목록으로 수집합니다.

다음 예에서는 두 개의 ArrayList를 만들었습니다. 첫 번째 목록 그리고 두 번째 목록 문자열 유형입니다. 그만큼 필터() 메소드는 두 목록에 모두 존재하는 공통 요소의 목록을 반환합니다.

 import java.util.*; public class CompareArrayListExample7 { public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;)); System.out.println(&apos;First List: &apos;+firstList); ArrayList secondList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;, &apos;Perl&apos;)); System.out.println(&apos;Second List: &apos;+secondList); // Finds common elements System.out.print(&apos;Common elements: &apos; +firstList.stream().filter(secondList::contains).collect(Collectors.toList())); } } 

산출

 First List: [Java, Python, Ruby, Go] Second List: [Java, Python, Ruby, Go, Perl] Common elements: [Java, Python, Ruby, Go]