본문 바로가기

전체 글54

[Java] Java 배열(Array) 이란? Java 배열(Array) 완전 정리Java에서 배열(Array)은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 자료 구조이다. 배열을 이해하면 여러 데이터를 효율적으로 관리하고 반복문과 함께 활용할 수 있다. 1. 배열이란?같은 타입의 데이터를 연속된 메모리 공간에 저장하는 자료형**참조형(Reference Type)**이며, 배열 변수는 실제 데이터가 저장된 시작 주소를 가리킨다.배열은 **선언과 동시에 크기(Size)**를 정해줘야 한다.배열은 시작 값과 길이(length) 정보를 같이 가지고 다닌다.· 기본형 vs 참조형 비교기본형실제 값을 변수에 저장참조형객체나 배열의 시작 주소를 변수에 저장2. 배열 선언과 생성2-1. 선언 방법// 타입[] 변수이름int[] score;// 타입 변수이름.. 2025. 9. 30.
[Java] Java Stream 완벽 가이드 (기초편) 1. Stream이란 무엇인가?Java 8에서 도입된 Stream API는 데이터를 다루는 새로운 방식입니다.Stream은 배열이나 컬렉션의 요소를 하나씩 꺼내어 **흐름(파이프라인)**으로 처리할 수 있도록 돕는 도구입니다.즉, 반복문을 간결하게 대체하고, 데이터 처리 과정을 직관적으로 표현할 수 있습니다.2. Stream의 특징데이터 원본을 변경하지 않는다Stream 연산은 원본 배열이나 리스트를 건드리지 않고, 새로운 결과를 반환합니다.연속적인 처리(파이프라인 구조)여러 연산을 체인처럼 연결하여 데이터를 가공할 수 있습니다.내부 반복 사용개발자가 for문을 직접 작성하지 않아도 내부적으로 반복을 수행합니다.3. Stream의 처리 단계Stream을 이용한 데이터 처리 과정은 보통 3단계로 나뉩니다... 2025. 9. 30.
[운영체제] 컴파일러란? 컴파일 과정과 종류까지 쉽게 알아보자. 🔹컴파일(Complie)이란?→ 컴파일은 사람이 작성한 고급언어(High-level Language)를 컴퓨터가 이해할 수 있는 저급언어(Low-lever Language, 기계어/어셈블리어)로 변환하는 과정이다. · 입력 : 소스 코드 (Source Code) [예: main.c, program.cpp]· 출력 : 목적 코드 (Object Code) 또는 실행 파일(Executable File) [예: a.exe] ※ 컴파일 과정 1 .전처리(Preprocessing) 2. 컴파일(Compilation) 3. 어셈블(Assembling) 4. 링킹(Linking) #include, #define 등의 지시문 처리주석 제거, 매크로 치환, 외부 라이브러리 포함전처리된 코드를 어셈블리어.. 2025. 9. 26.
[운영체제] 컴파일러 언어 vs 인터프리터 언어 무엇이 다를까? ※ 컴파일(Complie)이란?→ 컴파일은 사람이 작성한 고급언어(High-level Language)를 컴퓨터가 이해할 수 있는 저급언어(Low-lever Language, 기계어/어셈블리어)로 변환하는 과정이다. ※ 컴파일러(Compiler)란?→ 컴파일러는 컴파일 과정을 수행하는 번역기 프로그램이다. 고급언어로 작성된 소스프로그램을 읽고, 기계어 또는 어셈블리어 같은 저급 언어로 변환해준다. 즉, 컴파일이 '번역하는 과정' 이라면, 컴파일러는 '번역기'인 셈이다. 참고 : https://milk-tea-with-pearls.tistory.com/71 [운영체제] 컴파일러란? 컴파일 과정과 종류까지 쉽게 알아보자.🔹컴파일(Complie)이란?→ 컴파일은 사람이 작성한 고급언어(High.. 2025. 9. 26.
[프로그래머스 - java] 순서쌍의 개수 (Lv.0) * 순서쌍의 개수 (Lv.0)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120836class Solution { public int solution(int n) { int answer = 0; for(int a=1; a 2025. 9. 23.
[Java] Map 이란? 1. Map 이란?Java 에서 Map은 데이터를 Key-Value 쌍으로 관리하는 자료구조이다.2. Map 특징Key : 중복이 불가하며, 유일해야 한다.Value : 중복 가능하다.Key를 통해 빠르게 Value를 조회할 수 있다.저장 순서를 유지하지 않는다.3. Map 활용1) put - 데이터 추가Map map = new HashMap();// 데이터 추가map.put("apple", 3);map.put("banana", 5);map.put("orange", 2);System.out.println(map);· 출력 : {apple=3, banana=5, orange=2} 2) get - 데이터 조회int appleCount = map.get("apple");System.out.println.. 2025. 9. 22.
[프로그래머스-Java] 점의 위치 구하기 (Lv.0) / 배열의 유사도 (Lv.0) * 점의 위치 구하기 (Lv.0)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120833class Solution { public int solution(int[] dot) { int answer = 0; if(dot[0] > 0){ answer = 1; if(dot[1] * 배열의 유사도 (Lv.0) 문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120903class Solution { public int solution(String[] s1, String[] s2) { .. 2025. 9. 19.
[Web & Server] HTTP 프로토콜이란? * HTTP 프로토콜 (HTTP: Hypertext Transfer Protocol) 이란? 1. 개념인터넷 상에서 서버/클라이언트 모델로 데이터를 주고받는 애플리케이션 레벨 프로토콜TCP/IP 위에서 동작전송 가능한 데이터: HTML, 이미지, 동영상, 오디오, 텍스트 등 모든 종류하이퍼텍스트 기반 전송 : 링크를 통해 데이터에 접근2. 작동 방식HTTP는 서버/클라이언트 모델를 따른다.클라이언트에서 요청(request)를 보내면 서버는 요청을 처리해 응답(response)을 한다.클라이언트 → 요청(request)클라이언트 소프트웨어(Chrome, IE, Safari 등)가 설치된 컴퓨터 사용한다.URL을 통해 서버에 접속 후, 데이터 요청할 수 있다.서버 → 응답(response)서버의 요청을 받아.. 2025. 9. 1.
[Servlet] Servlet이란? 뭐냐 [ Servlet 이란 ? ]서블릿(Servlet)이란 Java를 사용하여 웹을 만들기 위해 필요한 기술이다.클라이언트가 요청을 보내면, 그 요청을 처리하고 결과를 다시 전송하는 자바 프로그램을 의미한다. * 서블릿의 특징Java 언어로 작성되므로, Java에 대한 지식이 필요하다.동적으로 HTML 문서를 생성하여 웹 서비스를 제공하는 것이 주 목적이다 * 서블릿의 장점Java 기반이므로 Java API 전체를 활용할 수 있다.운영체제나 하드웨어에 영향을 받지 않아, 한 번 개발하면 다양한 서버 환경에서 실행 가능하다.웹 애플리케이션에서 효율적인 자료 공유 방법을 제공한다.다양한 오픈소스 라이브러리와 개발 도구를 활용할 수 있다. * 서블릿의 단점화면에 표시되는 HTML 코드를 프로그램에서 직접.. 2025. 8. 29.
[Oracle] 대여 기록이 존재하는 자동차 리스트 구하기 (Lv.3) / 조건에 맞는 도서 리스트 출력하기 * 대여 기록이 존재하는 자동차 리스트 구하기 (Lv.3)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/157341?language=oracleSELECT DISTINCT A.CAR_ID FROM CAR_RENTAL_COMPANY_CAR A, CAR_RENTAL_COMPANY_RENTAL_HISTORY B WHERE 1=1 AND A.CAR_ID = B.CAR_ID AND A.CAR_TYPE = '세단' AND TO_CHAR(B.START_DATE, 'MM') = '10' ORDER BY A.CAR_ID DESC; * 조건에 맞는 도서 리스트 출력하기 (Lv.1)문제 : https://school.programmers.co.k.. 2025. 8. 29.
[프로그래머스-Java] 배열 자르기 (Lv.0) / 피자 나눠 먹기 (3) (Lv.0) * 배열 자르기 (Lv.0)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120833class Solution { public int[] solution(int[] numbers, int num1, int num2) { int[] answer = {}; int len = num2-num1+1; answer = new int[len]; for(int i=0; i * 피자 나눠 먹기 (3) (Lv.0)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120816class Solution { p.. 2025. 8. 29.
[프로그래머스-Java] 삼각형의 완성조건 (1) (Lv.0) * 삼각형의 완성조건 (1) (Lv.0)문제 : https://school.programmers.co.kr/learn/courses/30/lessons/120889?language=javaclass Solution { public int solution(int[] sides) { int answer = 0; int max=0, sum=0; for(int i=0; i 2025. 8. 28.