공부한 내용을 정리하는 글이라 틀린 내용이 있을 수 있습니다!
오늘 학습한 switch/case문과 if문에 대한 정리.
대표적인 조건문으로 다양하게 활용할 수 있다.
실행시킬 코드가 한 줄이면 중괄호를 생략할 수 있지만 한 줄 이상이라면 중괄호를 꼭 넣어주자.
if를 여러개 사용하여 쓸 수 있지만 조건을 잘 설정해줘야할 것 같다.
else if문을 이용하면 여러 조건을 편리하게 작성할 수 있다.
if문 실습
이런 식으로 실습을 해보았다.
결과는 위의 사진과 같이 나왔는데, 코드를 작성하는데 생각한것보다 시간이 걸려 부족한게 많다는 생각이 들었다.
switch/case문은 조건이 정수와 문자열만 가능하기에 if문과 같은 조건문이지만 까다로울 수 도 있다.
그래도 코드를 간결하게 정리할 수 있다는 장점이 있는 조건문이다.
switch/case문 실습
int random2 = (int)(Math.random()*3)+1;
int j = 0;
String player2 = "플레이어";
String computer2 = "컴퓨터";
String result2 = "결과";
// scanner.close();
Scanner Play2 = new Scanner(System.in);
System.out.println("가위바위보!");
j = Play.nextInt();
//
System.out.println("플레이어 컴퓨터 결과");
switch (j) {
case 1 :
if (random==1)
{
player2="가위";
computer2 = "바위";
result2 = "패배";
}
else if(random==2)
{
player2="가위";
computer2 = "가위";
result2 = "비김";
}
else if(random==3)
{
player2="가위";
computer2 = "보";
result2 = "승리";
}
System.out.printf("%s %s %s",player2,computer2,result2);
break;
case 2 :
if (random==1)
{
player2="바위";
computer2 = "가위";
result2 = "승리";
}
else if(random==2)
{
player2="바위";
computer2 = "바위";
result2 = "비김";
}
else if(random==3)
{
player2="바위";
computer2 = "보";
result2 = "패배";
}
System.out.printf("%s %s %s",player2,computer2,result2);
break;
case 3 :
if (random==1)
{
player2="보";
computer2 = "가위";
result2 = "패배";
}
else if(random==2)
{
player2="보";
computer2 = "바위";
result2 = "승리";
}
else if(random==3)
{
player2="보";
computer2 = "보";
result2 = "비김";
}
System.out.printf("%s %s %s",player2,computer2,result2);
break;
default:
System.out.printf("1~3중 하나만 눌러줭");
break;
}
출력은 이렇게 잘 나왔다.
나는 switch/case문과 if문 두개를 사용하여 가위바위보를 출력해보고싶어 저렇게 코드를 짜보았다.
더 간결하게 코드를 작성할 수 있을것같았는데 그렇지못해 아쉬움이 남아 조금 더 생각해보려고한다.
+그 밖의 추가적인 내용
Scanner ooo = new Scanner(System.in); 으로 입력값을 받아올 수 있다.
객체 생성 후 문자열로 반환.
String(문자열) -> int타입으로 변환.
자주 쓸 것 같으니 잘 알아두자.