SeouliteLab

[Java/자바] Objects.equals() 메서드로 객체 비교하기 본문

프로그래밍

[Java/자바] Objects.equals() 메서드로 객체 비교하기

Seoulite Lab 2024. 3. 19. 11:29

Java에서는 객체를 비교하기 위해 Objects 클래스의 equals() 메서드를 사용할 수 있습니다. 이 메서드는 두 객체의 내용이 동일한지를 비교합니다.

1. Objects.equals() 메서드 소개

Objects.equals() 메서드는 두 객체를 인자로 받아 그 내용을 비교합니다. 두 객체가 모두 null이면 true를 반환하고, 둘 중 하나만 null이면 false를 반환합니다. 그 외의 경우에는 두 객체의 equals() 메서드를 호출하여 내용을 비교합니다.

2. Objects.equals() 예제

예제 1: 두 문자열 비교

import java.util.Objects;

public class Main {
    public static void main(String[] args) {
        String str1 = "hello";
        String str2 = "hello";
        
        boolean result = Objects.equals(str1, str2);
        System.out.println(result);  // 출력 결과: true
    }
}

위 예제에서는 두 문자열이 동일한 내용을 가지므로 true가 출력됩니다.

예제 2: null 값 비교

import java.util.Objects;

public class Main {
    public static void main(String[] args) {
        String str1 = null;
        String str2 = null;
        
        boolean result = Objects.equals(str1, str2);
        System.out.println(result);  // 출력 결과: true
    }
}

위 예제에서는 두 문자열이 모두 null이므로 true가 출력됩니다.

예제 3: 서로 다른 객체 비교

import java.util.Objects;

class MyClass {
    private int value;

    public MyClass(int value) {
        this.value = value;
    }

    public int getValue() {
        return value;
    }
}

public class Main {
    public static void main(String[] args) {
        MyClass obj1 = new MyClass(10);
        MyClass obj2 = new MyClass(10);
        
        boolean result = Objects.equals(obj1, obj2);
        System.out.println(result);  // 출력 결과: false
    }
}

위 예제에서는 서로 다른 객체를 비교하고 있으므로 false가 출력됩니다.