오늘은 if문까지 나갔다.
OT 진행하고 진도를 나갔다.
천천히 나가는 것 같은데 수업 시간이 길어서 진도가 많이 나가게 되는 것 같다.
지금은 괜찮지만 조금 더 어려워지면..!
못 따라가면 안 되니까 성실하게 따라가야지 👊
프로그램 : 명령어의 집합
명령어 : 영어 단어로 이루어져 있다
변수 : 값을 저장하기 위한 메모리
= : 대입 연산자 (같다 아님)
== : 같다
소스파일의 확장자 : ~.java
❓근데 이 소스파일 실행을 어디서 어떻게 할까❓
실행을 하기 위해서는 컴퓨터가 이해 할 수 있게 0과 1로 만들어야 한다.
0과 1로 만들어주기 위해서 컴파일을 하는 것이다.
그리고 자바는 바이너리(2진수)로 번역하지 않고 바이트(16진수)로 번역한다.
(다른 언어는 바이너리로 번역 하는건가?)
- 모든 코드는 클래스 안에 있어야 함
- 소스 파일의 이름은 public 클래스 이름과 동일해야 함
- 실행하려면 main() 메서드 하나는 꼭 있어야 함
- public 클래스는 한 파일에 하나만 만들 수 있다.
- 소스파일 이름과 클래스 이름이 같아야 함
원래 패키지도 이름 설정을 해줘야 하는데 설정을 안해주면 그냥 프로젝트 이름을 가져다 쓴다.
패키지 : 소속 이름
클래스와 변수는 동일하면 에러가 난다
패키지 분리를 여러개 해주면 파일 명이 동일해도 패키지만 다르면 상관 없다
주석 단축키 : Ctrl + Shift + /
자동 줄맞춤 : Ctrl + Shift + F
값을 저장할 메모리이다
사용하기 전에 선언 해야 함
(값을 담기 위한 메모리 자리를 할당)
숫자타입 : 정수타입 (byte(1B), short(2B), int(4B), long(8B))
실수타입 (float(4B), double(8B))
문자타입 : 문자 1개 타입 char(2B)
→ 스펠링 한 개만 담을 수 있다 'a'
문자열 타입 String(4B) "abc"
String은 첫 글자가 대문자 → 이것은 클래스 타입?
소문자랑은 약간 다르다고 생각하면 됨
불타입 : boolean (1B) (true, false)
영어, 한글, 숫자, $, _ 를 조합하여 만듦
대소문자 구분함
숫자로 시작할 수 없음
예약어 사용 불가
+, -, *, /, %(모드 연산자)
++, --
int a = 5, b;
b = a++; // 후위연산자 (++을 나중에 실행. 5를 b에 할당한 뒤 a가 증가)
b = ++a; // 선위연산자 (++을 먼저 실행. a를 먼저 증가시킨 뒤 그 결과를 b에 할당)
">, >=, ==, <=, <, !="
비교 연산자는 두 값을 비교한 결과를 true, flase로 반환한다.
&& : 둘 다 트루여야 트루
|| : 하나라도 트루이면 트루
! : 반전
int a=10;
!(a>10) → true
= 오른쪽의 값을 왼쪽에 할당
+=, -=, *=, /=, %=
프로그램의 흐름을 제어하는 것
if문, if-else문, if-else if-else문, switch문
❓ ‘==’로 문자 비교 ❓
그렇게 되면 이 문자열의 참조값(아마도 주소값만 비교한다)만 비교
스펠링 하나 하나를 비교하는게 아니다
문자열 상수의 참조값? 으로 비교하기 때문에 정확하지 않다
그럼 어떻게 해야 돼?
equals를 쓰면 된다!
(반복문부터 내일 나갈 예정)