언어 공부22 [Java] Java의 연산자 ✍️ 학습 목표 Java가 제공하는 다양한 연산자를 알아보기. 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선순위 switch 연산자 📌 산술 연산자 기본적인 수학 계산에 사용되는 연산자들을 말한다. 7가지 연산자가 존재한다. (+, -, *, /, %, ++, --) 나눗셈은 타입에 따라 다른 결과가 나온다. (int, float) 다른 타입끼리 산술 연산을 하면 더 큰 범위로 자동 형변환이 이루어진다. 문자도 산술 연산이 가능하다. 문자가 유니코드로 바꾸어 저장되기 때문이다. // Examples int x = 10; int y = 4; System.out.printf("%d / %d = %d.. 2022. 8. 15. [Java] Java의 데이터 타입, 변수 그리고 배열 ✍️ 학습 목표 프리미티브 타입 종류, 값의 범위 그리고 기본 값 프리미티브 타입 vs 레퍼런스 타입 리터럴이란? 변수 선언 및 초기화 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언 타입 추론, var 💡프리미티브 타입 종류, 값의 범위 그리고 기본 값 Java에는 8가지의 기본형 타입(primitive type)을 미리 정의하여 제공한다. 크게 논리형, 정수형, 실수형, 문자형 4가지로 나누어지고 표현 가능한 범위에 따라 또 나누어진다. 문자형인 char는 Java에서 유니코드를 사용하기 때문에 2 byte이다. 기본 값이 존재해서 NULL이 존재하지 않는다. 💡프리미티브 타입 vs 레퍼런스 타입 데이터 타입은 크게 '기본형(Primitive Type)'과.. 2022. 8. 12. [Java] JVM과 자바 코드 실행 ✍️ 학습 목표 JVM 컴파일 방법 실행 방법 바이트코드 JIT 컴파일러 JVM 구성 요소 JDK와 JRE 📌JVM이란? Java Virtual Machine의 약자로 자바를 실행하기 위한 가상 머신이다. Java는 완전한 기계어가 아니고 바이트 코드라서 해석하고 실행할 수 있는 가상의 OS가 필요하다. 이 역할을 해주는 것이 JVM이다. ✔️ JVM의 기능 자바 프로그램이 어느 환경에서도 실행될 수 있게 한다. 프로그램 메모리를 관리하고 최적화한다. JVM는 '가비지 컬렉션'이란 프로세스를 통해 메모리를 관리한다. 이 가비지 컬렉션은 이름에서 알 수 있듯이 사용되지 않는 메모리를 정리한다. 따라서, JVM이 메모리를 효율적으로 관리하고 최적화한다는 것이다. Java는 OS에 독립적이지만, JVM은 OS.. 2022. 8. 8. [C++] 표준 템플릿 라이브러리 (STL) : 컨테이너 (vector, map) 표준 템플릿 라이브러리(STL)란? 템플릿으로 작성된 많은 제네릭 클래스와 함수 라이브러리! STL에 포함된 제네릭 클래스와 함수들은 "컨테이너", "iterator", "알고리즘" 3가지로 분류된다. 컨테이너는 자료 구조를 구현한 클래스로 맵(map), 셋(set), 벡터(vector), 리스트(list) 등이 있다. 이번 글은 벡터와 맵에 대해서 정리한다! 속도적인 측면에선 배열보다 떨어지지만 메모리 관리에 있어서는 아주 효율적이다! 벡터는 size와 capacity가 따로 존재한다! 이유는 새로운 원소가 들어올 때마다 새로운 공간을 할당하면 비효율적이기 때문이다. 그렇기에 벡터는 새로운 원소가 들어오면 추가적인 메모리 공간을 할당한다. (이전 공.. 2021. 7. 1. 이전 1 2 3 4 다음