개발/기본) 기본기
기본기) 비교 연산 차이 (Equls , == )
by 테샤르
2024. 4. 23.
비교 연산 차이 (Equls , == )
비교 연산에 대해서 간략하게 정리한다.
2가지의 자주 사용하는 비교 연산자의 장점과 단점을 정리한다.
< 비교 연산자 비교>
|
설명 |
== |
- == 연산자는 값 형식(Value Types)과 참조 형식(Reference Types) 모두에서 사용될 수 있습니다.
- 값 형식의 경우 == 연산자는 해당 값들을 비교하여 값이 같은지 여부를 확인합니다.
- 참조 형식의 경우 == 연산자는 두 객체의 참조를 비교합니다. 즉, 두 객체가 동일한 메모리 위치를 가리키는지 여부를 확인합니다.
- 하지만 참조 형식에서 == 연산자를 사용할 때는 객체의 실제 내용이 아니라 참조 값 자체를 비교하기 때문에 주의해야 합니다.
|
Equls |
- Equals 메서드는 System.Object 클래스에 정의된 메서드이며, 모든 클래스에서 상속받아 사용할 수 있습니다.
- 기본적으로 Equals 메서드는 == 연산자와 동일하게 두 객체를 비교합니다. 즉, 참조형식에서는 두 객체의 참조를 비교하고 값 형식에서는 해당 값들을 비교합니다.
- 하지만 클래스에서 Equals 메서드를 오버라이드하여 새로운 비교 로직을 구현할 수 있습니다. 이렇게 하면 두 객체를 비교하는 방법을 개발자가 직접 정의할 수 있습니다.
|
일반적으로 객체의 내용을 비교하려면 Equals 메서드를 사용하는 것이 좋지만 값 연산자는 == 연산자를 사용한다.
== 연산자를 사용해서 참조를 비교하거나 클래스를 사용해서 비교할때는 Equals 메소드를 오버라이드해서 원하는 비교 동작을 구현하는 방식으로 많이 사용한다.
C#에서 문자열을 비교하는 방법 : [링크]
★☆☆☆☆
댓글