TryParse
Enum.TryParse(Console.ReadLine(), out playerInput);
int.TryParse → "문자열 → 숫자(int)" 변환
Enum.TryParse → "문자열 → 열거형(enum)" 변환
즉, 콘솔에서 입력한 문자열을 미리 선언한 enum 멤버로 바꾸고 싶을 때 사용
switch
switch (이놈이랑)
{
case 이놈이 일치하면: 이 아래 실행
열거형 enum
enum MyHand
{
Rock = 1,
Paper = 2,
Scissors = 3
}
처음에 바위가위보 에 q w e 를 초기화한 다음
Enum.TryParse(Console.ReadKey(), out playerInput);
로 유저가 단축키를 입력하면 바로 출력되게 하려고 했는데 실패함.
- 열거형(enum) 안에 들어가는 건 정수 상수 만 가능
- 즉, = q 처럼 문자나 문자열은 안 되고, 숫자만 가능.
Random
Random 변수이름 = new Random(); // Random 객체 생성
- 객체 생성할때 ( min , max ) 를 넣는 기능은 없음
- Random rnd = new Random(1, 7);
- 이런식의 사용은 불가능
컴퓨터가 1에서 100까지 숫자 중 하나를 고른다
- Random CpuNum = new Random();
- int GuessNum = CpuNum.Next(1, 101);
- 1 이상 , 101 미만
맨날 헷갈리는 TryParse
int PlayerInput = int.TryParse(Console.ReadLine());
- 위는 잘못된 코드이다.
- 이유는 TryParse 는 바꾼 결과 ( int 값 ) 를 리턴하지 않고,
- 성공했는지 여부 ( true / false ) 를 리턴하기 때문
- 변환시킨 후 바로 값을 대입하고 싶으면 out 을 사용하자
out 사용
bool int.TryParse(string input, out int result)
- input: 문자열(변환할 값)
- result: 변환된 숫자(int)가 들어갈 변수 (out 키워드)
- 반환값: 변환 성공이면 true, 실패하면 false
'📖TIL' 카테고리의 다른 글
| 250910 복습 (0) | 2025.09.10 |
|---|---|
| Random 에 Int 대신에 Enum (0) | 2025.09.10 |
| 비주얼 노벨식 글자 타이핑을 연출하는 함수 (0) | 2025.09.09 |
| 250909 예습 (0) | 2025.09.09 |
| 250908 복습 (0) | 2025.09.08 |