[JAVA] if문과 switch/case문

김남균·2023년 8월 7일
0

java

목록 보기
3/15
post-thumbnail

공부한 내용을 정리하는 글이라 틀린 내용이 있을 수 있습니다!

오늘 학습한 switch/case문과 if문에 대한 정리.


if문

대표적인 조건문으로 다양하게 활용할 수 있다.


조건문 if문


실행시킬 코드가 한 줄이면 중괄호를 생략할 수 있지만 한 줄 이상이라면 중괄호를 꼭 넣어주자.


if - else문

if를 여러개 사용하여 쓸 수 있지만 조건을 잘 설정해줘야할 것 같다.


else if문


else if문을 이용하면 여러 조건을 편리하게 작성할 수 있다.


if문 실습

이런 식으로 실습을 해보았다.


결과는 위의 사진과 같이 나왔는데, 코드를 작성하는데 생각한것보다 시간이 걸려 부족한게 많다는 생각이 들었다.


switch/case문


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타입으로 변환.
자주 쓸 것 같으니 잘 알아두자.


0개의 댓글