namespace CSharpGrammar
{
class Program
{
static void Main(string[] args)
{
// int를 string 변환은 단순하지 않음
int a = 100;
//string b = (string)a; // 에러
string input;
input = Console.ReadLine(); // string으로 반환됨
// 만약 숫자여도 숫자가 아닌 문자 "숫자"임
int number = int.Parse(input); // string -> int
Console.WriteLine(input);
// int -> string
int hp = 100;
int maxHp = 100;
// string.format
//string message = string.Format("당신의 HP는 {0}/{1} 입니다.", hp,maxHp);
// string interpolation
string message = $"당신의 HP는 {hp}/{maxHp} 입니다.";
}
}
}
string은 .NET에서 System.String 클래스로 정의된 데이터 타입이다.char)의 배열이며, 여러 유용한 메서드와 속성을 제공한다.string name = "Player"; // 문자열 변수 선언
Console.WriteLine(name); // Player 출력
string 타입을 사용하여 변수를 선언하고 값을 할당할 수 있다.Console.WriteLine(name);을 통해 문자열을 콘솔에 출력할 수 있다.string input = "123";
int number = int.Parse(input); // 문자열을 정수로 변환
Console.WriteLine(number); // 123 출력
📌 주의할 점
int.Parse(input)는 문자열이 숫자로 변환 가능한 경우에만 정상 동작."123a" 같은 잘못된 입력값이 들어오면 예외 발생 (FormatException).int hp = 100;
string hpString = hp.ToString(); // 정수를 문자열로 변환
Console.WriteLine(hpString); // "100"
.ToString() 메서드를 사용하면 숫자를 쉽게 문자열로 변환 가능.string.Format() 사용int hp = 100, maxHp = 200;
string message = string.Format("당신의 HP는 {0}/{1} 입니다.", hp, maxHp);
Console.WriteLine(message);
📌 {0}, {1} → 자리 표시자로, hp, maxHp 값이 차례로 대입됨.
📌 결과 출력:
당신의 HP는 100/200 입니다.
int hp = 100, maxHp = 200;
string message = $"당신의 HP는 {hp}/{maxHp} 입니다.";
Console.WriteLine(message);
📌 $ 기호를 사용하면 {} 안에 변수를 직접 삽입할 수 있어 가독성이 뛰어남.