[Effective C#] string.Format()을 보간 문자열($)로 대체

WH_NAM·2024년 2월 6일

Effective C#

목록 보기
4/23
post-thumbnail

Effective C# Itme3

String.Format

Console.WriteLine(String.Format("The value of pi is {0}", Math.PI);

생성된 문자열을 직접 출력해보고 올바른 형태인지를 직접 확인하기 전까지는 코드를 제대로 작성했는지 확인이 어려움

  • 포맷 문자열과 인자 리스트를 분리하여 전달
  • 인자의 개수와 실제로 전달되는 인자의 개수의 일치를 확인하지 않음(런타임 에러)

보간 문자열

Console.WriteLine($"The value of pi is {Math.PI}");
  • $을 문자열 앞에 붙여서 사용
  • 문자열로 변경할 표현식은 {}내에 둔다
  • 코드의 가독성이 좋아진다.
  • 인자 전달에 오류가 없다.

박싱 언박싱
문자열 보간 기능을 사용하더라도 컴파일러는 param을 이용하여 object배열을 전달하는 코드를 생성한다.
Math.PI는 double이므로 object 타입으로 변경하려면 박싱을 수행해야 한다.
다음과 같이 사용하면 박싱을 회피할 수 있다.

Console.WriteLine($"The value of pi is {Math.PI.ToString()}");
profile
안녕하세요

0개의 댓글