Java29 [Java] 자바 메인 함수(Main Function) 자바에서 메인 함수(Main Function)는 자바 프로그램의 시작 지점을 의미합니다. 자바 프로그램을 실행하면 가장 먼저 호출되는 함수가 바로 main() 함수입니다.아래는 자바의 기본적인 메인 함수 선언입니다:public static void main(String[] args) { // 프로그램의 시작 지점}코드를 구성하는 각 키워드와 의미 설명🔍 1. public접근 제어자입니다.public으로 지정하면 어디서든 접근 가능하다는 의미입니다.자바 프로그램을 실행하는 자바 런타임(JVM)은 외부에서 이 main() 함수를 호출하기 때문에 반드시 public이어야 합니다.→ private이나 protected, 아무것도 안 쓰면 실행되지 않음.🔍 2. staticstatic은 클래스 로딩 시 .. 2025. 3. 24. [Java] 기본 문법 정리 - 추가 ✅ 19. 트리 (Tree, Binary Tree, Binary Search Tree)트리는 계층 구조를 가지는 자료구조로, 탐색과 정렬에 자주 사용됨.대표적인 트리 구조는 이진 트리(Binary Tree), 이진 탐색 트리(BST).📍 1) 이진 트리 (Binary Tree)각 노드가 최대 2개의 자식을 가짐 (왼쪽, 오른쪽)DFS, BFS 탐색에 사용됨이진 트리 기본 클래스class Node { int data; Node left, right; public Node(int data) { this.data = data; this.left = this.right = null; }}public class BinaryTreeExample { public .. 2025. 3. 19. [Java] 기본 문법 정리 - 비트 연산, 수학 라이브러리, 시간 복잡도 개념 ✅ 14. 비트 연산 (Bitwise Operations)비트 연산은 정수형 데이터의 이진수 표현을 직접 조작하는 연산.빠른 연산이 필요하거나 특정 패턴을 체크할 때 유용.📍 1) 비트 연산자 정리연산자 설명 예제 (a=5, b=3)&비트 AND5 & 3 = 1 (0101 & 0011 = 0001)|비트 OR5 | 3 = 6 (0101 | 0011 = 0111)^비트 XOR5 ^ 3 = 6 (0101 ^ 0011 = 0110)~비트 NOT~5 = -6 (보수 연산)왼쪽 시프트 (2배 연산)5 >>오른쪽 시프트 (1/2 연산)5 >> 1 = 2 (0101 → 0010)📍 2) 비트 연산 예제public class BitwiseExample { public static void main(String.. 2025. 3. 19. [Java] 기본 문법 정리 - 이진 탐색, DFS & BFS, 동적 프로그래밍(DP) ✅ 11. 이진 탐색 (Binary Search)이진 탐색은 정렬된 배열에서 특정 값을 빠르게 찾는 알고리즘으로, 시간 복잡도는 O(log N).자바에서는 Arrays.binarySearch() 또는 직접 구현할 수 있음.📍 1) Arrays.binarySearch() 활용배열이 정렬되어 있어야 사용 가능값이 존재하면 인덱스 반환, 없으면 음수 반환import java.util.Arrays;public class BinarySearchExample { public static void main(String[] args) { int[] arr = {1, 3, 5, 7, 9}; // 반드시 정렬된 상태여야 함! int index = Arrays.binarySea.. 2025. 3. 19. [Java] 기본 문법 정리 - 정렬, 스택 & 큐, 우선순위 큐, 해시맵, 해시셋 ✅ 8. 정렬 (Arrays.sort(), Collections.sort(), Comparator)정렬은 코딩테스트에서 탐색, 최적화, 조합 문제에서 매우 자주 등장하는 개념.자바에서는 기본적으로 Arrays.sort()(배열 정렬), Collections.sort()(리스트 정렬)과 같은 메서드를 제공함.📍 1) 기본 정렬 (Arrays.sort())Arrays.sort(배열)을 사용하면 오름차순(ASC) 정렬됨.내부적으로 Dual-Pivot QuickSort 알고리즘 사용 (평균 O(N logN))배열 정렬 예제import java.util.Arrays;public class SortingExample { public static void main(String[] args) { i.. 2025. 3. 19. [Java] 기본 문법 정리 - 문자열, 컬렉션(List, Set, Map) ✅ 6. 문자열 다루기 (String, StringBuilder)자바에서 문자열을 다루는 방법은 크게 String(불변 객체)과 StringBuilder(가변 객체) 두 가지.📍 1) String 클래스 (불변, Immutable)String 객체는 한 번 생성되면 변경 불가능(Immutable)문자열을 다룰 때 새로운 객체를 계속 생성하므로 성능이 중요할 때는 StringBuilder 사용 추천문자열 비교 시 == 대신 equals() 메서드 사용!1. 문자열 선언과 초기화String str1 = "Hello"; // 리터럴 방식String str2 = new String("Hello"); // 객체 생성 방식📌 리터럴 방식은 메모리 효율적 (같은 문자열은 재사용)2. 문자열 연결 (+, conca.. 2025. 3. 19. 이전 1 2 3 4 5 다음