카테고리 없음
올바른 입력값 받는 방법(TryParse사용)
이더23
2024. 9. 23. 15:14
문제
입력값을 정수만 받고 싶을때
시도
int num = Console.Read();
if ( num > 48 && num < 52)
{
Console.WriteLine("잘했어");
}
else
{
Console.WriteLine("잘못된 입력입니다");
}
아스키코드를 이용해서 문제를 해결할려고 했다.
해결
아스키코드를 이용해서 문제를 해결할 수도 있지만, 입력값이 숫자인지 여부를 보다 명확하게 확인하고, 에러를 방지할 수 있는 TryParse() 방식이 더 안전하고 가독성이 좋습니다.
사용 코드
class Village
{
static private string inputNum;
static private int num;
static bool success;
static public void VillageMenu()
{
inputNum = Console.ReadLine();
success = int.TryParse(inputNum, out num);
if (success && num>0 && num < 4)
{
Console.WriteLine("올바른 입력입니다.");
}
else
{
Console.WriteLine("잘못된 입력입니다");
}
}
알게된점
TryParse 사용방법을 더 자세히 알게 된거 같다.
bool값을 많이 이용한다는 것을 알게됐다.