1. 타입 변환
- 연산은 기본적으로 같은 타입의 피연산자와 수행
- 서로 다른 타입의 피연산자가 있을경우 두 피연산자 중 크기가 큰 타입으로 자동변환
예) 10 / 3.0 = 3.3333
10 / 3 = 3
"연" 한글자당 2byte
"연산" => 4byte 같은 크기일때 정수 < 실수 < 문자열
a = 10
b = 10.5
c = "안녕"
만약 abc 다같이 묶어서 변수에 넣으면 그중 가장 큰 타입인 문자열로 변환됨
- 강제 타입 변환
예) int -> byte, (byte)변수명
✔ Scanner 클래스
- 자바에서 여러가지 데이터를 입력받을 수 있도록 도와주는 대표적인 입력관련 클래스
- java.util 패키지에 존재
메모리는 크게 stack 과 heap 으로 저장
stack 에는 한개짜리만 저장
클래스(여러개)는 heap에 저장되어짐
변수
데이터타입 변수이름 = 값;
int num = 10;
객체
클래스이름 변수이름 = new 생성자명();
Scanner sc = new Scanner(System.in)
System.in 은 터미널내의 데이터를 입력받음
new는 힙 메모리에 올려라~
heap에 scanner 가 저장되고
stack 에는 sc(참조변수)가 저장되고,
sc에는 heap내의 저장된 클래+스값의 주소값이 저장
2.제어문
- 프로그램의 흐름을 제어하는 문장
- 조건문
1. if문
2. switch문
- 반복문
1. while문
2. for문
if문
* if(조건식) 조건식의 결과가 true인 경우 실행할 문장;
* if(조건식) {
조건식의 결과가 true인 경우 실행할 문장;
...
}
if num = 10;
if(num > 10){
System.out.println("num은 10보다 큽니다");
}
if ~ else 문
* if(조건식) 조건식의 결과가 true인 경우 실행할 문장;
else 조건식의 결과가 false인 경우 실행할 문장;
* if(조건식) {
조건식의 결과가 true인 경우 실행할 문장;
...
}else{
조건식의 결과가 false인 경우 실행할 문장;
...
}
if else if 문
* if(조건식1) {
조건식의 결과가 true인 경우 실행할 문장;
...
else if(조건식2){
조건식의 결과가 true인 경우 실행할 문장;
...
}
else if(조건식3){
조건식의 결과가 true인 경우 실행할 문장;
...
}
}else{
조건식의 결과가 모두 fasle인 경우 실행할 문장;
...
}
✔ String 클래스
String str = new String("자바");
String str = "자바" //리터럴 표기법
== (같다, stack에서만 사용가능)
int num1 = 10
int num2 = 10
if(num1 == num2) System.out.println("같다!"); // == stack 비교
String str = "자바";
if(str == "자바") System.out.println("같다!"); // X
if(str.equals("자바")) System.out.println("같다!"); // O
int num1 = 10;
int num2 = num1;
String str1 = "자바";
String str2 = str1;
문제
성적 프로그램
1. 3과목 이상의 변수를 만들어 값을 입력받음(Scanner를 사용)
2. 위 점수를 변수에 저장하고 총점과 평균,학저를 구함
예) kor + math + com, (kor + math + com) / 3
단, 학점은 평균을 기준으로 90점이상은 A학점, 80점이상은 B학점, 70점이상은 C학점,
60점이상은 D학점, 나머지는 F학점이라고 함)
switch문
- if문과 비슷하지만 좀 더 정형화된 형태
- 특정 값과 일치하는 값을 찾아 실행
- break없으면 싹다 실행
switch(변수){
case 값1:
값1과 변수가 같을 경우 실행할 문장;
...
break;
case 값2:
값2와 변수가 같을 경우 실행할 문장;
...
break;
...
default:
값이 변수와 모두 다를 경우 실행할 문장;
....
}
if문은 범위줄때 편리
switch 는 특정값을 찾을때
과제
성적 프로그램
1. 3과목 이상의 변수를 만들어 값을 입력받음(Scanner를 사용)
2. 위 점수를 변수에 저장하고 총점과 평균,학저를 구함
예) kor + math + com, (kor + math + com) / 3
단, 학점은 평균을 기준으로 90점이상은 A학점, 80점이상은 B학점, 70점이상은 C학점,
60점이상은 D학점, 나머지는 F학점이라고 함)
3.switch으로 작성
'서버&백엔드 > 🔥 JAVA' 카테고리의 다른 글
Java | 배열,String클래스,유용한메소드 (0) | 2022.09.28 |
---|---|
Java | 반복문,Math,배열 (0) | 2022.09.27 |
Java | JVM,소스코드,출력,주석,변수,연산자 (1) | 2022.09.23 |
Java | 자바과거,설치,손코딩,intelliJ (0) | 2022.09.22 |
Java 원하는 날짜의 달력출력 (0) | 2022.03.10 |