* 문자열 검사를 할 때 ==과 Equals메서드 중 누가 더 빠를까요?..

* 저번에 본 봐와 같이 ==(IL : op_Equality)에는 12개의 메서드가 사용되지만

* Equals 매서드는 2 가지만 사용되더군요.

* 따라서 문자열 비교할 때는 Equals메서드를 사용해 비교하세요.


using System;


namespace EqualsVs__

{

  /// <summary>

   /// Class1에 대한 요약 설명입니다.

   /// </summary>

   class Class1

   {

       /// <summary>

       /// 해당 응용 프로그램의 주 진입점입니다.

       /// </summary>

       [STAThread]

       static void Main(string[] args)

       {

           string strCompared = "문자열";


           //IL_000c:  call       bool [mscorlib]System.String::op_Equality(string, string)

           //사용 메서드 수 : 12개

           //시간 : 7453.4

           if (strCompared == "문자열")

               Console.WriteLine("True");


           // IL_0023:  callvirt   instance bool [mscorlib]System.String::Equals(string)

           //사용 메서드 수 : 2개

           //시간 : 37.9

          if (strCompared.Equals("문자열"))

               Console.WriteLine("True");

       }

   }

}

덧붙여서.. int,double... 의 실수와 연관있는형은 ==가 훨빠릅니다. 단 스트링비교는 반드시 equal 로 하시는 습관을 들이십시요. 얼마안된다 안된다 생각하실수도 있겠지만.. 저거 하나가 여러게 모이면 확연히 표가 납니다...

- 출처 :  KNUG (한국 닷넷 사용자 모임; Korea .NET User Group)
- 출처 2 : http://cafe.daum.net/aspdotnet

+ Recent posts