int number = 10; // 여기서 10은 리터럴이다.
Console.WriteLine
string input = Console.ReadLine();
int num1 = int.Parse(input);
num1 = int.Parse(Console.ReadLine()); //이런 형식도 가능하다.
Parse와 형변환
Parse는 형변환이 아니라 숫자(정수/실수)처럼 보이는 문자열을 보이는 그대로의 값으로 변환시켜 주는 것임.
아래는 예시 코드
Console.WriteLine("형변환과 Parse의 차이를 알아보자!\n");
Console.Write("명시적 형변환을 이용해 '1'을 정수형으로 변환할 경우:");
Console.WriteLine((int)'1');
Console.Write("Parse를 이용해 '1'을 정수형으로 변환할 경우: ");
Console.WriteLine(int.Parse("1"));
결과:
Q. 형변환을 했을 뿐인데 왜 ‘1’이 49가 된걸까?
A. 👉 [CS] ASCII 코드
문자의 형변환
문자→문자열은 명시적/암시적 형변환이 되지 않음
다중입력
Split
을 이용하여 입력받은 문자열을 나누어 줄 수 있다.Console.Write("숫자 두 개를 입력해주세요: ");
string input = Console.ReadLine(); // "10 20"과 같은 문자열을 입력받음
string[] numbers = input.Split(' '); // 문자열을 공백으로 구분하여 배열로 만듦
int num1 = int.Parse(numbers[0]); // 첫 번째 값을 정수로 변환하여 저장
int num2 = int.Parse(numbers[1]); // 두 번째 값을 정수로 변환하여 저장
int sum = num1 + num2; // 두 수를 더하여 결과를 계산
Console.WriteLine("The sum of {0} and {1} is {2}.", num1, num2, sum);
Unhandled exception. System.IndexOutOfRangeException:
Index was outside the bounds of the array.
board.Length
를 사용하는 바람에 오류가 난 것이었음.i < board.Length;
부분을 i < 5
로 바꿔주자 문제 없이 잘 돌아가게 됨.GetLength
를 사용해도 좋을 것 같다.