일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- 이메일 전송
- 자바스크립트
- nest
- javacript
- MongoDB
- context switch
- 카카오 소셜로그인
- 참조에 의한 객체 복사
- 캐러셀
- 객체
- 중첩 구조 분해
- 구조 분해 할당
- 카카오로그인
- nodemailer
- 로그스태시
- 화살표 함수
- AGGREGATE
- nextjs
- JSON.parse
- react-slick
- DB
- 위크맵
- nestjs
- Map
- JavaScript
- Mongoose
- 위크셋
- JSON.stringify
- TypeScript
- logstash
- Today
- Total
목록Language (75)
뚜sh뚜sh
String.join() 첫 번째 인자로 구분자(delimiter), 두 번째 인자로 문자열 배열이나 반복 가능한 컬렉션을 받는다. String[] words = {"Java", "is", "good"}; String result = String.join(" ", words); // 결과: "Java is good" 문자열 뒤집을 때 StringBuilder 클래스 또는 StringBuffer 클래스의 reverse() 메서드를 사용하여 문자열을 뒤집을 수 있다. String original = "Java"; StringBuilder sb = new StringBuilder(original); String reversed = sb.reverse().toString(); System.out.println(..
필터링 1. 프레디케이트로 필터링 filter 메서드는 프레디케이트(불리언을 반환하는 함수)를 인수로 받아서 프레디케이트와 일치하는 모든 요소를 포함하는 스트림을 반환함 2. 고유 요소 필터링 스트림은 고유 요소로 이루어진 스트림을 반환하는 distinct 메서드도 지원함(고유 여부는 스트림에서 만든 객체의 hashCode, equals로 결정됨) 스트림 슬라이싱 1. 프레디케이트를 이용한 슬라이싱 TAKEWHILE 데이터에서 칼로리가 300 이상인 데이터만 뽑고 싶다면 filter를 사용하면 됨, 여기서 데이터가 정렬되어 있는 상태였다면 TAKEWHILE을 사용하여 무한 스트림을 포함한 모든 스트림에 프레디케이트를 적용해서 스트림을 슬라이스 할 수 있음 DROPWHILE 정렬된 데이터에서 칼로리가 30..
스트림이란? 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소로 정의할 수 있음 데이터를 언제 계산하느냐가 컬렉션과 스트림의 가장 큰 차이임 컬렉션은 현재 자료구조가 포함하는 모든 값을 메모리에 저장하는 자료구조임 즉, 컬렉션의 모든 요소는 컬렉션에 추가하기 전에 계산되어야 함(컬렉션에 요소를 추가하거나 컬렉션의 요소를 삭제할 수 있는데 이런 연산을 수행할 때마다 컬렉션의 모든 요소를 메모리에 저장해야 하며 컬렉션에 추가하려는 요소는 미리 계산되어야 함) 반면, 스트림은 이론적으로 요청할 때만 요소를 계산하는 고정된 자료구조임(스트림에는 요소를 추가, 제거할 수 없음) 즉, 스트림은 사용자가 데이터를 요청할 때만 값을 계산함 ※ 연속된 요소(Sequence of elements) 컬렉션과 마찬..
람다 표현식 메서드로 전달할 수 있는 익명 함수를 단순화한 것 이름은 없지만, 파라미터 리스트, 바디, 반환 형식, 발생할 수 있는 예외 리스트는 가질 수 있음 람다의 특징 익명 : 보통의 메서드와 달리 이름이 없으므로 익명이라 표현함, 구현해야 할 코드에 대한 걱정거리가 줄어듬 함수 : 람다는 메서드처럼 특정 클래스에 종속되지 않으므로 함수라고 부름, 하지만 메서드처럼 파라미터 리스트, 바디, 반환 형식, 가능한 예외 리스트를 포함함 전달 : 람다 표현식을 메서드 인수로 전달하거나 변수로 저장할 수 있음 간결성 : 익명 클래스처럼 많은 자질구레한 코드를 구현할 필요가 없음 ※ 파라미터 리스트 (Parameter List) 메서드: 메서드는 0개 이상의 파라미터를 가질 수 있음, 각 파라미터는 타입과 이..
동작 파라미터화(behavior parameterization) 아직은 어떻게 실행할 것인지 결정하지 않은 코드 블록 이 코드 블록은 나중에 프로그램에서 호출함 즉, 코드 블록의 실행은 나중으로 미루어짐 유연한 API를 만들 때 동작 파라미터화가 중요한 역할을 함 프레디케이트(predicate) 참 또는 거짓을 반환하는 함수 선택 조건을 결정하는 인터페이스 public interface ApplePredicate { boolean test(Apple apple); } 무거운 사과만 선택 public class AppleHeavyWeightPredicate implements ApplePredicate { public boolean test(Apple apple) { return apple.getWeigh..
Comparable 1. 목적 객체가 자기 자신을 다른 객체와 비교할 수 있게 하는 것 즉, 객체가 자신의 정렬 순서를 스스로 정의함 2. 메서드 'Comparable' 인터페이스는 'compareTo(Object o)' 메서드를 정의함 이 메서드는 객체 자신과 다른 객체를 비교하여, 현재 객체가 다른 객체보다 작으면 음수, 같으면 0, 크면 양수를 반환함 Comparator 1. 목적 외부에서 두 객체를 비교하는 방법을 제공함 즉, 객체의 비교 방식을 외부에서 정의하고 커스터마이즈할 수 있음 2. 메서드 'Comparator' 인터페이스는 'compare(Object o1, Object o2)' 메서드를 정의함 이 메서드는 두 객체를 비교하여 첫 번째 객체가 두번째 객체보다 작으면 음수, 같으면 0, ..
아래 코드는 우선순위 큐의 Comparator을 통해 새로운 조건을 제공함 - 조건1) 절댓값이 같을 경우, el1이 el2보다 큰 순서로 취급되어 el2의 우선순위가 더 높아 음수가 먼저 출력됨 - 조건2) 절댓값이 다를 경우, abs_el1이 abs_el2보다 큰 순서로 취급되어 abs_el2의 우선순위가 더 높아 작은 값이 출력됨 PriorityQueue priorityQueue = new PriorityQueue((el1, el2) -> { int abs_el1 = Math.abs(el1); int abs_el2 = Math.abs(el2); if (abs_el1 == abs_el2) { return el1 > el2 ? 1 : -1; } return abs_el1 - abs_el2; });

배열이란? - 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 배열의 선언과 생성 - 배열의 선언 : 배열을 다루기 위한 참조변수의 선언(저장공간 생성X) 타입[] 변수이름; // 배열을 선언(배열을 다루기 위한 참조변수 선언) 변수이름 = new 타입[길이]; // 배열을 생성(실제 저장공간을 생성) 배열의 인덱스 - 배열의 인덱스 : 각 요소에 자동으로 붙는 일련번호 - 인덱스의 범위는 0부터 배열길이-1까지 배열의 길이 - 배열의 길이 : 배열이름.length - 배열은 한번 생성하면 그 길이를 바꿀 수 없음 배열의 초기화 - 배열의 초기화 : 배열의 각 요소에 처음으로 값을 저장하는 것 - 배열은 생성할 때 타입의 기본값으로 자동초기화됨 배열의 출력 - for문 int[] iArr = {100..

변수(variable)란? - 하나의 값을 저장할 수 있는 메모리 공간 변수의 선언 1. 변수의 선언 이유 - 값(data)을 저장할 공간을 마련하기 위해서 2. 변수의 선언 방법 - 변수타입 변수이름; 변수에 값 저장하기 1. 변수에 값 저장하기('='는 등호가 아니라 대입) int age; // 정수(int)타입의 변수 age를 선언 age = 25; // 변수 age에 25를 저장 2. 변수의 초기화 - 변수에 처음으로 값을 저장하는 것 int x = 0; // 변수 x를 선언 후, 0으로 초기화 int y = 5; // 변수 y를 선언 후, 5로 초기화 int x = 0, y = 5; // 두 줄을 한 줄로 ※ 지역 변수는 읽기 전에 꼭 초기화해야 함 변수의 값 읽어오기 1. 변수의 값이 필요한 ..

GUI와 AWT, 스윙의 개념 - GUI(Graphical User Interface) 그래픽 환경, 모든 운영체제의 기본 환경 버튼, 이미지, 메뉴 등 제공 - AWT(Abstract Windowing Toolkit) 자바 초기 GUI 프로그래밍 도구 운영체제의 리소스 사용 - 스윙(swing) 순수 자바 컴포넌트 패키지 자체 리소스 사용, Jxxxx 클래스로 제공 컨테이너(Container) - 컴포넌트를 포함하는 클래스 - AWT : Frame, Panel, Dialog, Window, Applet - 스윙 : JFrame, JPanel, JDialog, JWindow, JApplet 컴포넌트(Component) - 버튼, 이미지, 리스트 등 - 컴포넌트는 반드시 컨테이너에 포함됨 스윙을 위한 기본..