2018-3-4 TIL Console IO
콘솔 입출력
- 콘솔이란? 콘솔은 컴퓨터를 대상으로 데이터를 입출력하는 장치를 총칭하는 말이다. 따라서 키보드 모니터도 콘솔 입출력장치에 해당이된다.
문자열을 조합해서 출력하는 System.out.printf 메소드
System.out.printf("정수는 %d, 실수는 %f, 문자는 %c", 12, 24.5, 'A');
- %d와 같은 것을 가리켜 ‘서식 지정자(Format Specifier)’라고 한다.
package yoon;
public class FormatString {
public static void main(String [] args){
int age = 20;
double height = 178.2;
String name = "kim jimmy";
System.out.printf(" name : %s \n", name);
System.out.printf(" age : %d \n height : %e \n\n", age, height);
}
}
//result
name : kim jimmy
age : 20
height : 1.782000e+02
### 콘솔 입력
- Scanner : Scanner클래스는 생성자로 전달되는 대상으로부터 데이터를 추출하는 기능을 제공한다.
- Scanner(File source)
- Scanner(String source)
- Scanner(InputStream source)
package yoon;
import java.util.Scanner;
public class ScanningString {
public static void main(String [] args) {
String source = "1 3 5";
Scanner sc = new Scanner(source); // Scanner 인스턴스 생성
int num1 = sc.nextInt(); // int형 데이터 추출
int num2 = sc.nextInt(); // int형 데이터 추출
int num3 = sc.nextInt(); // int형 데이터 추출
int sum = num1 + num2 + num3;
System.out.printf("%d + %d + %d = %d \n", num1, num2, num3, sum);
}
}
//result
1 + 3 + 5 = 9
Scanner 클래스의 키보드 적용
package yoon;
import java.util.Scanner;
public class ScanningKeyboard {
public static void main(String [] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int num2 = sc.nextInt();
int num3 = sc.nextInt();
int sum = num1 + num2 + num3;
System.out.printf("%d + %d + %d = %d \n", num1, num2, num3, sum);
}
}
//result
12
14
16
12 + 14 + 16 = 42
- 위의 12 14 16은 키보드를 통해서 입력을 받은것이다.
- nextInt메소드가 호출되면 키보드로부터 데이터가 입력될 때까지 프로그램의 실행이 대기상태에 놓인다.
Scanner 클래스의 주요 메소드들
- int nextInt()
- byte nextByte()
- String nextLine()
- double nextDouble()
- boolean nextBoolean()
package yoon;
import java.util.Scanner;
public class ReadString {
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
System.out.print("문자열 입력 : ");
String str1 = sc.nextLine();
System.out.print("문자열 입력 : ");
String str2 = sc.nextLine();
System.out.printf("입력된 문자열 1 : %s \n", str1);
System.out.printf("입력된 문자열 2 : %s \n", str2);
}
}
//result
문자열 입력 : a
문자열 입력 : b
입력된 문자열 1 : a
입력된 문자열 2 : b
Written on March 4, 2018