본문 바로가기
개발/기본) 기본기

기본기) 비교 연산 차이 (Equls , == )

by 테샤르 2024. 4. 23.

비교 연산 차이 (Equls , == )

비교 연산에 대해서 간략하게 정리한다.

2가지의 자주 사용하는 비교 연산자의 장점과 단점을 정리한다.

 

반응형

 

< 비교 연산자 비교>

  설명
==
  • == 연산자는 값 형식(Value Types)과 참조 형식(Reference Types) 모두에서 사용될 수 있습니다.
  • 값 형식의 경우 == 연산자는 해당 값들을 비교하여 값이 같은지 여부를 확인합니다.
  • 참조 형식의 경우 == 연산자는 두 객체의 참조를 비교합니다. 즉, 두 객체가 동일한 메모리 위치를 가리키는지 여부를 확인합니다.
  • 하지만 참조 형식에서 == 연산자를 사용할 때는 객체의 실제 내용이 아니라 참조 값 자체를 비교하기 때문에 주의해야 합니다.
Equls
  • Equals 메서드는 System.Object 클래스에 정의된 메서드이며, 모든 클래스에서 상속받아 사용할 수 있습니다.
  • 기본적으로 Equals 메서드는 == 연산자와 동일하게 두 객체를 비교합니다. 즉, 참조형식에서는 두 객체의 참조를 비교하고 값 형식에서는 해당 값들을 비교합니다.
  • 하지만 클래스에서 Equals 메서드를 오버라이드하여 새로운 비교 로직을 구현할 수 있습니다. 이렇게 하면 두 객체를 비교하는 방법을 개발자가 직접 정의할 수 있습니다.

 

 

일반적으로 객체의 내용을 비교하려면 Equals 메서드를 사용하는 것이 좋지만 값 연산자는 == 연산자를 사용한다.

== 연산자를 사용해서 참조를 비교하거나 클래스를 사용해서 비교할때는 Equals 메소드를 오버라이드해서 원하는 비교 동작을 구현하는 방식으로 많이 사용한다.

 
 

 

 

C#에서 문자열을 비교하는 방법 : [링크]

 

문자열 비교 방법 - C# 가이드 - C#

문화권별 순서를 사용하거나 사용하지 않고 대/소문자 없이 문자열 값을 비교하고 정렬하는 방법을 알아봅니다.

learn.microsoft.com

 

★☆☆☆☆

 

반응형

댓글