[JAVA] 4장. 입출력과 제어문

ma.caron_g·2021년 4월 24일
0

Java

목록 보기
4/9
post-thumbnail

[ 입력문 ] 📕

입력에는 Scanner 클래스를 이용

자바에는 제공되는 Scanner문import해준다.

import java.util.Scanner; // Scanner 클래스를 import해준다

Scanner sc = new Scanner(System.in) // Scanner 객체를 생성

int a = sc.nextInt(); // 정수 입력 받기
String str = sc.nextLine(); // 문자열 입력 받기

(System.in)은 키보드와 연결된 자바의 표준 입력 스트림이다.

Scanner의 메서드 타입설명
next()입력된 값을 문자열로 리턴
nextInt()입력된 값을 정수형으로 리턴
nextDouble()입력된 값을 실수형으로 리턴
nextLine()입력된 값을 '엔터(\n)'전 까지 리턴
hasNext()현재 입력된 값이 있으면 true,아니면 새로운 값이 들어올 때 까지 무한정 기다려서 새로운 입력값이 들어오면 그때 true 리턴, [ cmd+z ] 키가 입력 되면 입력 끝이므로 false 리턴

[ 출력문 ] 📙

기본 출력문을 사용하기 위해서는 별다른 import는 필요하지 않다
출력을 위한 명령문은

System.out.println(출력할 내용);

"System.out.println()"을 치려면 상당히 시간이 걸리는데
[ 이클립스 - 환경설정 - General - Key ]에서 [Content Assist에서 binding]을 설정하면 단축키 설정을 이용하면
"syso"를 입력한 후 단축키를 누르면 "System.out.println()" 으로 변경되어 빠른 업무가 가능하다.

[ 제어문 ] 📒

제어문은 코드의 흐름을 제어하는 명령문으로 조건문반복문이 있다

[ 조건문 ] 📗

주어진 조건에 따라 흐름을 나누는 명령문으로 [ if문, switch문 ] 이 있다.

[ if문 ]

"만약에" 라는 뜻으로 "만약에 ~한다면"으로 해석해서 코드를 짜면 쉽다.

if( 조건 ) {
}

의 형태로 존재하며,

어떻게 쓰이는지 예를 들자면,

Scanner sc = new Scanner(System.in);	// 입력 스캐너 객체 생성
System.out.println("x와 y를 입력해주세요."); // 
int x = sc.nextInt();	//x값 입력
int y = sc.nextInt();	//y값 입력


>if ( a > b ){ // a가 b보다 크다면
	System.out.println("a가 b보다 큽니다.");
}
else if(a < b) { 	// 그게 아니라, a가 b보다 작으면
	System.out.println("b가 a보다 큽니다.");
}
else {
	System.out.println("두 수는 같습니다.");
}

[ switch~case문 ]

"조건에 만족한다면 여기로~"라는 느낌의 코드로 if문 보다 여러가지 조건을 나타내기에 편하다.

switch(조건문) {
       case 1:
               조건 만족 시 실행할 코드
       case 2:
       case 3:
               조건 만족 시 실행할 코드
}

Scanner sc = new Scanner(System.in);
System.out.println("성별을 입력해주세요 (M/W)");
String sex = sc.nextLine();

switch(sex){
	case "M" :
	case "m" :
    		System.out.println("성별은 남자입니다.");
	case "W" :
	case "w" :
		System.out.println("성별은 여자입니다.");
	case default :
    		System.out.println("잘못 입력하였습니다.");
}

[ 반복문 ] 📘

주어진 조건을 만족하면 반복하는 명령문으로 [ for문, while문 ]이 있다.

[ for문 ]

for안에 있는 "초기화식""조건식"에 만족할때까지 "초기화식을 증감"을 반복

for( 초기화식; 조건식; 증감식 ){
        코드 작성
}

for(int i=0; i<5; i++){
	//i=0 부터 i가 5보다 작을 동안 블록 안 코드를 반복 후 i++(i를 1증가)
	//i = 0, 1, 2, 3, 4 가 되며, 5부터는 반복문을 빠져나옴. 총 5번 반복함.
    
    System.out.println(i + "번째 입니다.");
}

결과는
0번째 입니다.
1번째 입니다.
2번째 입니다.
3번째 입니다.
4번째 입니다.

[ while문 ]

"~하는 동안"의 뜻으로 조건문안을 만족하는 동안 반복
대신 끝날 수 있는 명령문을 작성해주어야함.

break;
또는
조건문을 만족하도록 조건문 안 값을 변경.

while(조건) {
       코드 작성
}

int i = 0;
while(i < 5) {
	System.out.println(i + "번째 반복");
	i++;	// 조건을 빠져나갈 수 있도록 조건문 안에 값을 변경.
}

결과는
0번째 반복.
1번째 반복.
2번째 반복.
3번째 반복.
4번째 반복.

[ Do ~ While문 ]

또 While문에 [ Do ~ while문 ] 또한 존재하는데

Do {
        while문에 들어가기 전 먼저 실행 될 코드
}

존재하는데 Do~While은 아직 코딩하면서 많이 작성해본적은 없는 코드인거 같다.



이렇게 이번 장에서는 입출력과 제어문에 대해서 알아보았다.

profile
다른 사람이 만든 것을 소비하는 활동보다, 내가 생산적인 활동을 하는 시간이 더 많도록 생활화 하자.

0개의 댓글