Java 의 놀이터 JVM
JVM은 Java Virtual Machin의 약자이며 "자바 가상 머신"이라는 뜻이다.
메모리 관리와 가비지 컬렉션을 자동으로 수행한다.
JRE
JRE는 Java Runtime Environment의 약자이며 "자바 실행 환경"이라는 뜻을 가지고 있다.
JVM을 포함하고 있으며,
JRE는 .class 파일 실행만 가능하고 JDK가 있어야 javac 명령을 통해 .java 파일을 .class 파일로 변환해 준다.
JDK
JDK는 Java Development Kit 즉, 자바 개발 키트라는 뜻을 가지고 있다.
JDK는 위에서 설명했듯이 Java 파일들을 Class파일들로 변환해 주는 Java Compiler 기능을 가지고 있다.
JDK⊃JRE⊃JVM 순으로 포함관계를 가진다.
IntelliJ에서
sout을 입력하면 System.out.println(); 이 입력된다.
자바에서 전체 주석할때는 주석하고 싶은 곳을 스크롤한 뒤 컨트롤 + 슬래쉬(윈도우 기준)
Java의 데이터 타입 크기
byte(1byte) -> short(2) -> int(4) - > long(8) -> float(4) -> double(8)
Java의 연산자
- 산술연산자 : +, -, *, /, %(나머지), <<, >>
- 비교연산자 : <, >, <=, >=, ==, !=
- 논리연산자 : &&, ||, !
- 대입연산자 : =, ++, --
- 기타연산자 : (type), ? :, instance of
알고리즘 오답 노트
분수의 덧셈
첫 번째 분수의 분자와 분모를 뜻하는 numer1, denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2, denom2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.
입출력 예 #1
1 / 2 + 3 / 4 = 5 / 4입니다. 따라서 [5, 4]를 return 합니다.
class Solution {
public int[] solution(int numer1, int denom1, int numer2, int denom2) {
int numer = numer1 * denom2 + numer2 * denom1;
int denom = denom1 * denom2;
int gcd = getGCD(numer, denom);
numer /= gcd;
denom /= gcd;
int[] answer = new int[2];
answer[0] = numer;
answer[1] = denom;
return answer;
}
private int getGCD(int a, int b) {
while (b != 0) {
int temp = a % b;
a = b;
b = temp;
}
return a;
}
}
'TIL' 카테고리의 다른 글
[계산기 만들기] 계산기 만들기 1일 차, 그리고 생겼던 문제 (1) | 2025.01.03 |
---|---|
Java 향상된 for문과 알고리즘(최댓값 만들기) 오답 노트 (1) | 2025.01.02 |
KPT 회고 (4MEN Mini Project)와 알고리즘(두 수의 나눗셈) 오답 노트 (0) | 2024.12.30 |
웹페이지 만들기 프로젝트 (2) | 2024.12.27 |
[SQL] Pivot Table과 윈도우 함수 그리고 값이 없을 때 대처법 (1) | 2024.12.25 |