728x90
반응형
자바에서 키 입력
System.in
- 키보드로부터 직접 읽는 자바의 표준 입력 스트림
- 키 값을 바이트(문자x)로 리턴
- 키 값을 바이트 데이터로 넘겨주므로 응용프로그램이 문자 정보로 변환해야 함
Scanner
System.in이 키를 읽고, 읽은 바이트를 다양한 타입으로 변환하여 리턴
- java.util.Scanner 클래스
객체 생성
import java.util.Scanner;
...
Scanner sc= new Scanner(System.in);
- scanner는 입력되는 키 값을 공백으로 구분되는 아이템 단위로 읽음 - '\t', '\f', '\r', ' ', '\n'
- 개발자가 원하는 다양한 타입의 값으로 바꾸어 읽을 수 있음
Scanner 주요 메소드
메소드 | 설명 |
String next() | 다음 토큰을 문자열로 리턴 |
byte nextByte() | 다음 토큰을 byte 타입으로 리턴 |
short nextShort() | 다음 토큰을 short 타입으로 리턴 |
int nextInt() | 다음 토큰을 int 타입으로 리턴 |
long nextLong() | 다음 토큰을 long 타입으로 리턴 |
float nextFloat() | 다음 토큰을 float 타입으로 리턴 |
double nextDouble() | 다음 토큰을 double 타입으로 리턴 |
boolean nextBoolean() | 다음 토큰을 boolean 타입으로 리턴 |
void close() | Scanner 사용 종료 |
boolean hasNext() | 현재 입력된 토큰이 없으면 true, 아니면 입력 때까지 무한정 대기, 새로운 입력이 들어올 때 true 리턴, crtl-z 키가 입력되면 입력 끝이므로 false 리턴 |
식과 연산자
연산의 종류 | 연산자 | 연산의 종류 | 연산자 |
증감 | ++ -- | 비트 | & | ^ ~ |
산술 | + - * / % | 논리 | && || ! ^ |
시프트 | >> << >>> | 조건 | ? : |
비교 | > < >= <= == != | 대입 | = *= /= += -= &= ^= |= <<= >>= >>>= |
연산자 우선순위
높음 | ++(postfix) --(postfix) |
↓ | + - ++(prefix) --(prefix) ~ ! |
↓ | 형변환(type casting) |
↓ | * / % |
↓ | +(덧셈) -(뺄셈) |
↓ | << >> >>> |
↓ | < > <= >= instanceof |
↓ | == != |
↓ | & |
↓ | ^ |
↓ | | |
↓ | && |
↓ | || |
↓ | ? : |
낮음 | = += -= *= /= %= &= ^= |= <<= >>= >>>= |
조건문
if
- if의 괄호 안에 조건식(논리형 변수나 논리 연산)
if (조건식) {
실행 문장 // 조건식이 참인 경우
}
if - else
- 조건식이 true면 실행문장 1 실행 후 if - else 문을 벗어남
- false인 경우 실행문장 2 실행 후 if - else 문을 벗어남
if (조건식) {
실행 문장 1 // 조건식이 참인 경우
}
else {
실행 문장 2 // 조건식이 거짓인 경우
}
다중 if - else
if (조건식 1) {
실행 문장 1; // 조건식 1이 참인 경우
}
else if (조건식 2){
실행 문장 2; // 조건식 2가 참인 경우
}
else if (조건식 m){
실행 문장 m; // 조건식 m이 참인 경우
}
else {
실행 문장 n; // 앞의 모든 조건이 거짓인 경우
}
switch
- switch문은 case문의 값과 비교
- case의 비교 값과 일치하면 해당 case의 실행문장 수행
- break를 만나면 switch문 벗어남
- case의 비교 값과 일치하는 것 없으면 default 문 실행
- default 문 생략 가능
- case문에 break문이 없다면, 다음 case문으로 실행 계속
switch (식) {
case 값 1:
실행 문장 1;
break;
case 값 2:
실행 문장 2;
break;
...
case 값 m:
실행 문장 m;
break;
default:
실행문장 n
}
case문의 값
- 문자, 정수, 문자열 리터럴만 허용
- 실수 리터럴 불가
728x90
반응형
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 자바 기본 문법 4 (0) | 2023.04.17 |
---|---|
[Java] 자바 기본 문법 3 (0) | 2023.04.17 |
[Java] 자바 기본 문법 1 (2) | 2023.04.17 |
[Java] 자바 이론 (0) | 2023.04.17 |