Java에서 ArrayList 비교

Sarwan Soomro 2023년10월12일
  1. Java에서 배열 목록 비교
  2. Java에서 두 개의 배열 목록 비교
  3. Java에서 비교 전에 배열 목록 정렬
Java에서 ArrayList 비교

Java는 문자열 클래스와 배열 목록 등을 비교하기 위한 간단한 방법을 제공합니다. 그래서 우리는 당신을 위해 간단하고 깨끗하게 유지합니다.

이 자습서에서는 먼저 Java의 비교 방법을 사용하여 두 개의 배열 목록을 비교합니다. 배열 목록에 적용하기 전에 Java 문자열에도 동일한 방법을 적용합니다.

마지막으로 비교 전에 정렬되지 않은 배열 목록을 정렬하는 방법을 보여줍니다.

Java에서 배열 목록 비교

Java에는 배열 목록 내의 개체, 크기 및 요소를 비교하는 내장된 메서드가 있습니다. 동일한 출력을 얻기 위해 사용할 수 있는 방법이 많이 있지만 가장 간단하기 때문에 다음 방법을 사용합니다.

Java의 .equals() 함수

Java의 이 함수는 사용자 지정 개체를 이 목록과 비교합니다.

구문 구조:

ArrayList1.equals(ArrayList2)

매개변수: 개체만. 이 경우 ArrayList2는 단일 매개변수로 전달되는 객체입니다.

이 메서드는 다음을 기반으로 부울의 true 또는 false를 반환합니다.

  1. 사용자 지정 개체도 목록인 경우.
  2. 두 목록의 크기가 동일합니다.
  3. 두 목록의 모든 관련 요소 쌍도 동일합니다.

이 방법을 보다 객관적으로 이해하려면 문자열을 사용하여 만든 다음 프로그램을 확인하십시오.

나중에 배열 목록에서 동일한 논리를 사용할 것입니다.

.equals() 메서드를 사용하여 Java에서 문자열 비교

package comparearrays.com.util;

public class FirstStringDemoEqualsMethd {
  public static void main(String[] args) {
    String one = "USA";
    String two = "USA";
    String three = "Germany";

    // comparing the values of string one and string two
    if (one.equals(two) == true) {
      System.out.println("String one: " + one);
      System.out.println("String one: " + two);
      System.out.println("Both are equal");
    } else {
      System.out.println("Both are not equal");
    }

    // compares string one's values against string three's (since both are the same, true)
    // false (one and three are not the same, false)
    System.out.println("String one and String three are not the same: so, " + one.equals(three));
  }
}

출력:

String one: USA
String one: USA
Both are equal
String one and String three are not the same: so, false

Java에서 두 개의 배열 목록 비교

우리는 .equals()를 사용하여 위의 예제에서 문자열 값을 비교하여 Java의 ArrayList에서 사용할 때 메서드가 동일하게 작동함을 보여줍니다. 어때요?

다음 Java 구문을 확인하십시오.

ArrayList<String> myList1 = new ArrayList<String>();
ArrayList<String> myList2 = new ArrayList<String>();

배열 목록은 여기에서 Java의 String 클래스를 사용합니다. 마찬가지로 이전 예제에서 문자열을 비교했습니다.

이제 ArrayList<String>에서 동일한 방법을 사용할 것입니다.

모든 것이 명확해 졌습니까? 해보자

자바 코드:

package comparearrays.com.util;

import java.util.ArrayList;

// main class
public class ArrayListComparisionExample1 {
  // main function
  public static void main(String[] args) {
    // list 1
    ArrayList<String> myList1 = new ArrayList<String>();
    // values
    myList1.add("Apple");
    myList1.add("Orange");
    myList1.add("Grapes");
    myList1.add("Water Melon");
    // list 2
    ArrayList<String> myList2 = new ArrayList<String>();
    // values
    myList2.add("Apple");
    myList2.add("Orange");
    myList2.add("Grapes");
    myList2.add("Water Melon");
    // print list 1
    System.out.println("Values from list 1: " + myList1);
    // print list 2
    System.out.println("Values from list 2: " + myList2);

    // apply .equals() method for comparision
    if (myList1.equals(myList2) != false) {
      System.out.println("Both Array Lists are equal!");
    } else {
      System.out.println("Both Array Lists are not equal!");
    }

    // add new values to list to determine if condition works
    myList1.add("Pine Apple");
    // print updated list
    System.out.println("Updated valued from list 1: " + myList1);

    // compare again

    if (myList1.equals(myList2) != false) {
      System.out.println("Both Array Lists are equal!");
    } else {
      System.out.println("Both Array Lists are not equal!");
    }
  }
}

출력:

Values from list 1: [Apple, Orange, Grapes, Water Melon]
Values from list 2: [Apple, Orange, Grapes, Water Melon]
Both Array Lists are equal!
Updated valued from list 1: [Apple, Orange, Grapes, Water Melon, Pine Apple]
Both Array Lists are not equal!

Java에서 비교 전에 배열 목록 정렬

배열 목록의 크기와 요소가 같지만 값이 정렬되지 않은 경우에는 어떻게 됩니까?

ArrayList<String> myList1 = new ArrayList<String>(Arrays.asList("1", "2", "3", "4", "5"));
ArrayList<String> myList2 = new ArrayList<String>(Arrays.asList("2", "1", "3", "4", "5"));
메모
간단한 해결책은 import java.util.Collections;를 사용하는 것입니다. 그것은 당신을 위해 나머지를 할 것입니다. 방법은 다음과 같습니다.
package comparearrays.com.util;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;

public class ArrayListsComparisionAndSortingExample2 {
  public static void main(String[] args) {
    ArrayList<String> myList1 = new ArrayList<String>(Arrays.asList("1", "2", "3", "4", "5"));
    // unsorted list
    ArrayList<String> myList2 = new ArrayList<String>(Arrays.asList("2", "1", "3", "4", "5"));
    // sorting lists
    Collections.sort(myList1);
    Collections.sort(myList2);
    System.out.println(myList1.equals(myList2)); //
  }
}

출력:

true

Collections.sort(myList2);를 사용하지 않으면 출력은 false가 됩니다.

정렬되지 않은 값에 동일한 sort() 메소드를 적용할 수 있지만 동일한 객체와 요소를 갖습니다. 그런 다음 .equals()를 사용할 수 있습니다.

라이브 데모:

비교하기 전에 배열 목록 정렬

Sarwan Soomro avatar Sarwan Soomro avatar

Sarwan Soomro is a freelance software engineer and an expert technical writer who loves writing and coding. He has 5 years of web development and 3 years of professional writing experience, and an MSs in computer science. In addition, he has numerous professional qualifications in the cloud, database, desktop, and online technologies. And has developed multi-technology programming guides for beginners and published many tech articles.

LinkedIn

관련 문장 - Java Method

관련 문장 - Java ArrayList