Java를 다시 공부하는 이유
어제 튜터님과 면담을 하고서 Java문법을 이용해서 코드 짜는 게 익숙지 않다는 의견을 받았다.
자바를 아직 덜 이해하였다고 하셨다.
나도 튜터님의 말에 동의 한다.
항상 코드를 작성할 때 이해가 되지 않은 상태에서 배워 더 어렵게 느껴졌었다.
이 코드는 어떻게 사용되는 거지? 하면서 강의 내용을 따라 치기 바빴다.
그래서 다시 처음부터 내가 직접 코드를 작성하면서 배워 나가보려 한다.
남들보다 늦더라도 내가 이해하고 넘어가야 나중에 더 빨리 성장가능성이 있다고 튜터님께서 말씀해 주셨다.
물론 나도 그 말에 매우 매우 동감한다.
그래서 나는 다시 Java문법 강의를 들으며 공부한다.
Java문법 - 변수
변수는 데이터를 담는 그릇과 같다.
20이라는 데이터가 몇백 개 줄에 적혀있는데 개발자는 20이라는 숫자를 10으로 변경할 때 그 몇백 개의 코드들을 수정해야 한다. 하지만 변수를 이용하면 단 한 개의 줄만 수정하면 된다.
// 변수를 사용하지 않은 코드
public class Var1 {
public static void main(String[] args) {
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
}
}
// 변수를 사용한 코드
public class Var1 {
public static void main(String[] args) {
// 변수를 사용함에있어 처음 할당된 변수값만 변경하면 모든 코드의 값들이 적용된다.
int a = 20;
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
}
}
변수는 선언과 초기화를 해줘야 한다.
초기화를 안 할 시 이상한 데이터가 들어갈 수 있다. (JVM에서 컴파일러 하는 과정에 오류로 알려준다.)
변수의 타입
- 정수
- byte
- short
- int
- long
- 실수
- float
- double
- 기타
- boolean
- String
- char
가장 자주 사용되는 타입
- 정수
- int
- long - 사용 시 리터럴 끝에 L을 붙여줘야 한다.
- 실수
- double
- 기타
- boolean
- String
Java문법 - 연산자
+, -, *, / 와 같이 계산을 수행하는 기호를 연산자라 한다.
우리가 아는 수학의 일반적인 개념과 거의 동일하다.
여기선 증감연산자만 적겠다. 다른 부분들은 너무 상식선에서 생각할 수 있는 부분이다.
증감연산자
증감연산자는 변숫값에 int a = 1; 의 값에 +1 또는 -1을 해주는 연산자이다.
사용방법
//다음 변수값이있을때
int a = 1;
a = a + 1; // 출력하게 되면 2가 출력된다.
//증감 연산자의 사용
int b = 1;
b = ++b; // 출력하게 되면 2가 출력된다.
주의할 점은 ++a, 와 a++은 연산 우선순위가 다르니 주의해야 한다.
++a는 먼저 연산 후 사용되는 것이고, a++은 사용 후 연산되어 일부 잘못사용될 수 있다.
오늘 기분
이번주차 개인과제는 하나도 못할 것 같다.
이번주차 강의도 아직 2개밖에 안 들어서 무리...
일단 튜터님 말씀대로 Java문법부터 제대로 다시 배워서 열심히 따라가 봐야겠다.
'TIL(Today I Learned)' 카테고리의 다른 글
[TIL] Java 복습 - 반복문 while, for (0) | 2023.12.04 |
---|---|
[TIL]Java 복습 - 조건문 If, else (0) | 2023.12.01 |
[TIL] 똥망... (0) | 2023.11.20 |
[TIL] JWT(JSON Web Token) (1) | 2023.11.17 |
[TIL]Query Methods (0) | 2023.11.16 |