1. 타입 변환
- 연산은 기본적으로 같은 타입의 피연산자와 수행한다.
- 서로 다른 타입의 피연산자가 있을 경우 두 피연산자 중 크기가 *큰 타입으로 자동변환*
// 파이썬도 같은 크기일때 정수< 실수 < 문자열
- 강제로 타입 변환
ex) int -> byte (byte) 변수명
✅Scanner 클래스(출력 out, 입력in)
- 자바에서 여러가지 데이터를 입력받을 수 있도록 도와주는 대표적인 입력관련 클래스
-java.util 패키지에 존재
-변수(stack 하나짜리)
데이터 타입 변수이름 = 값;
int num = 10;
- 객체(heap 둘이상)
클래스이름 변수이름 = new 생성자명(); //클래스이름과 동일한 함수이름 = 생성자명
Scanner sc = new Scanner(System.in); //sc stack(heap을 가리키는 참조변수), new heap에 저장
2.제어문 - 조건문
-프로그램의 흐름을 제어하는 문장
1. if문
2.switch문
if문
- if(조건식) 조건식의 결과가 true인 경우 실행할 문장; //조건식은 boolean타입
* if(조건식) { //중괄호 없어도 쓸 수 있다.
조건식의 결과가 true인 경우 실행할 문장;
...
}
if ~else문
if문
* if(조건식) 조건식의 결과가 true인 경우 실행할 문장; //;주의 //조건식은 boolean
else 조건식의 결과가 false인 경우 실행할 문장;
* if(조건식) {
조건식의 결과가 true인 경우 실행할 문장;
...
}else{
조건식의 결과가 false인 경우 실행할 문장;
...
}
if~else if 문
* if(조건식) {
조건식의 결과가 true인 경우 실행할 문장;
}else if(조건식1){
조건식의 결과가 false인 경우 실행할 문장;
...
}else if(조건식2){
}else if(조건식2){
}
//if문이 참이면 esle if, else도 넘겨서 if문 밖으로 나감
String 클래스 (클래스'0' 기본 데이터 타입'X') //heap에 저장 stack은 기본 데이터 타입
String str = new String("자바"); // stack str , heap 자바
String str = "자바"; //동일
==(같다, stack에서만 값 비교 가능)
int num1 =10
int num2 =10
if(num1==num2) System.out.println("같다"); (o) 비교o
String str ="자바";
if(str =="자바") System.out.println("같다"!) (x)비교 x
if(Str.equals("자바")) System.out.println("같다!"); //비교o
int num1 =10;
int num2 =num1; //값을 가져온다
String str1 ="자바";
String str2 = str1; //주소값을 가져온다
switch문
-if문과 비슷하지만 좀더 정형화된 형태
-특정 값과 일치하는 값을 찾아 실행
switch(변수){
case 값1:
값1과 변수가 같을 경우 실행할 문장;
...
break;
case 값2:
값2와 변수가 같을 경우 실행할 문장;
...
break;
....
default:
값이 변수와 모두 다를 경우 실행할 문장;
....
}
2.제어문 - 반복문
1. while문
2. for문
<반복문>
-while문
while(조건식){
조건식의 결과가 true인 동안 반복할 문장;
...
}
ex) int num =10;
while(num>=10){
System.out.println("num은 10보다 큽니다");
num--;
}
//계속반복 무한루프 //while이 true인 동안 계속반복
-for문
for(변수의 초기화; 조건식; 증감식){
조건식이 true인 동안 반복할 문장;
...
}
ex) for(int i=1; i<=5; i++or i=i+1){
System.out.println("Hello Java!")
}
비교
int i=1;
while(i<=5){
so()
i++;
}
do ~while문
while문과 동일하지만 첫 반복이 false인 경우 while문은 반복을 하지 않음,
하지만 do while문은 반복을 진행한 뒤 조건식을 판단함
while(조건식){
문장...
}
do{
문장...
}while(조건식);
-continue문
반복이 진행되는 도중에 continue문을 만나면 반복문의 끝으로 이동하여 다음 반복으로 시작됨
for(변수; 조건식; 증감식;){
.....1문장
....2문장
3문장실행x때,
if(조건식) continue;
....3문장
}
-break문
switch문 또는 반복문을 벗어날 때 사용
for(변수; 조건식; 증감식){
...
...
if(조건식) {break;
}
...
}