2022/2/8
1. 입력문
① System.in: 키보드 장치를 직접 제어, 키 입력을 받는 표준 입력 스트림 객체.
키보드 입력 > System.in 입력 스트림 < 바이트 데이터 < Scanner < 형 변환된 데이터 < 자바 응용 프로그램
② Scanner: 자바패키지에서 제공하는 클래스. 원하는 타입으로 변환해줌.
A. import문: Scanner 클래스가 있는 자바 제공 패키지를 여기서 사용하겠다.
import java.util.Scanner; //클래스 밖, package 밑에 작성
B. Scanner 객체 생성
Scanner sc(변수명) = new Scanner(System.in);
C. 입력 받기
String 변수명 = sc(위 변수명). nextLine();-> 입력받은 걸 문자열 String 타입으로 리턴해준다. nextLine()은 입력받고 싶은 만큼 계속 사용 가능.
D. Scanner 객체 닫기
sc.close();
B~D까지는 메인 메서드 안에 작성
E. 스트링을 int로 바꾸는 방법
int (변수명) = Integer.parseInt(sc.nextLine());
스트링을 double로 변경
double dHeight = Double.parseDouble(height); 이렇게 하면 두 번 작성해야 하고 한 줄로 하려면
double dHeight = Double.parseDouble(sc.nextLine()); 이렇게 하면 됨.

2. 연산자 operator
① 종류
A. 단항 연산자: +(양수), –(음수), ++(증가), --(감소),!(not): 참, 거짓 앞에만 붙일 수 있는 연산자. 값을 반대로 바꿔줌. 참> 거짓, 거짓> 참
B. 이항 연산자:
I. 산술 연산자: + - * / %
II. 비교 연산자: < <= > >= == !=
III. 논리 연산자: &&: A && B: A와 B 둘 다 참이어야 참
||: A || B: A와 B 둘다 거짓이어야 거짓. 둘 중 하나라도 참이연 참.
C. 삼항 연산자:?:
D. 대입 연산자: =
E. 복합 대입 연산자: 산술+대입: += -= *= /= %=
F. (쉬프트/비트 연산자)
② 연산자 우선순위 (높은 순)
단항 연산자: ++ -- (전위형) > + - 양수 음수 > ++ -- (후위형) > !
형 변환: (타입)
산술 연산자: * / % > + -
(쉬프트 연산자)
비교연산자ㅣ < <= > >= == != instanceof
(비트 연산자)
논리 연산자: && > ||
삼항 연산자?:
(복합) 대입 연산자
3. 제어문
① 조건문: if문, switch문
A. if문: 조건이 참이면 영역 안의 코드를 실행시킨다.
[구조 1]
if(조건식){
//조건식이 참일 때 실행할 코드들 작성.
}
조건식: boolean타입의 변수 혹은 비교 연산이나 논리 연산이 혼합된 식으로 구성. 반드시 결과가 true / false 둘 중 하나여야 성립.
영역 안의 코드가 1개 명령일 경우 중괄호 생략 가능. 가급적이면 적는 게 좋다.
[구조 2]: 둘 중 하나의 블록은 반드시 실행됨. else는 옵션.
if(조건식){
//조건식이 참일 때 실행할 코드들
} else {
//조건이 참이 아닐 때 실행할 코드들 작성
}
[구조 3]
if(조건식){
// 조건식이 참일 때 실행할 코드들
} else if(조건식 2){
//조건 2가 참일 때 실행할 코드들
} else if(조건식 3){
//조건 3이 참일 때 실행할 코드들
} else {
//위 조건들이 모두 성립되지 않을 때 뭔가 실행해야 되면 else를 붙여서 코드들 작성.
}
B. switch 조건문
다중 선택문: 하나의 변숫값을 평가하여, 각 값에 대해 개별적으로 처리하는 문장.
변수 안에 들어있는 값과 똑같은 값이 있을 경우에 실행.
[구조]
switch(변수){
case 값 1:
//값 1과 변수의 값이 동일한 경우 실행할 코드들
break;
case 값 2:
//값 2와 변수의 값이 동일한 경우 실행할 코드들
break;
default:
//위 값들과 일치하지 않을 경우 수행할 명령이 있으면 default에 작성.
break; //마지막에 위치한 break는 생략 가능
}
특징:
-if문으로 대체 가능. 가독성 면에서는 switch가 나을 수도 있다.
-가능 변수 타입: int, char, String
-case 다음에는 반드시 값이 하나가 와야 한다.
-default 생략 가능
② 반복문: while, do-while, for
③ 보조 제어문: break, continue(반복하다 건너뛰기)