서버&백엔드/🔥 JAVA

서버&백엔드/🔥 JAVA

Java | Map과 FlatMap 차이

Map과 FlatMap 차이flatMap()은 Java 스트림 API에서 제공하는 중간 연산 메서드로, 스트림의 각 요소를 다른 스트림으로 변환하고, 이를 하나의 평평한 스트림(flat stream)으로 병합합니다. 즉, 각 요소가 1대1로 변환되는 map()과 달리, 각 요소가 1대다로 변환될 때 유용합니다.주요 특징입력과 출력:flatMap은 스트림의 각 요소를 처리하여 새로운 스트림으로 변환합니다.결과적으로, 다중 레벨의 스트림이 단일 레벨의 스트림으로 평탄화(flatten)됩니다.용도:중첩된 데이터 구조(예: 리스트 안의 리스트)를 평탄화하고 단일 레벨로 변환하는 데 유용합니다.각 요소가 리스트, 배열, 컬렉션 또는 또 다른 스트림일 때 사용됩니다.flatMap()과 map()의 차이map():입..

서버&백엔드/🔥 JAVA

해시맵

해시맵해시맵을 위한 HashTable 클래스와 HashMap 클래스가 있습니다. 두 클래스는 유사합니다만 HashTable 클래스는 자바의 초기 버전과 호환성을 위해 남겨두었을 뿐 최근에는 잘 사용되지 않습니다. 그래서 해시맵을 사용하도록 합니다. 해시맵의 ADT해시맵의 동작 방식은 해시 테이블과 동일하기 때문에 해시맵의 ADT만 표를 통해서 간단하게 설명하겠습니다.구분정의설명연산ValueType put(KeyType key,ValueType value)해시맵에 데이터를 저장합니다. 첫 번째 매개변수는 해당 데이터의 key값, 두 번째 매개변수는 해당 key에 해당하는 value값입니다. 반환하는 값은 해시맵 내에 동일한 key에 해당하는 값이 있었다면 그 key에 대한 value값을 반환합니다.Valu..

서버&백엔드/🔥 JAVA

String[]을 ArrayDeque<String>로 변환

String[]을 ArrayDeque로 변환import java.util.ArrayDeque;import java.util.Arrays;public class Example { public static void main(String[] args) { String[] stringArray = {"one", "two", "three", "four"}; // String[] -> List -> ArrayDeque 변환 ArrayDeque deque = new ArrayDeque(Arrays.asList(stringArray)); // 출력 확인 for (String element : deque) { System.out.pr..

서버&백엔드/🔥 JAVA

JAVA | 문자열 슬라이싱

1. substring()substring() 메서드는 문자열의 특정 부분을 추출합니다. 두 가지 오버로드된 형태가 있습니다.시작인덱스 하나만 제공 : 시작 인덱스부터 끝까지 부분 문자열을 반환합니다.String str = "Hello, World!";// 0123456789...String sub1 = str.substring(7); // "World!"시작 인덱스와 종료 인덱스 제공: 시작 인덱스 부터 종료 인덱스 전까지의 부분 문자열을 반환합니다.String sub2 = str.substring(0, 5); // "Hello" 2.split()split() 메서드는 주어진 구분자를 기준으로 문자열을 나누어 배열로 반환합니다.String str = "apple,banana,oran..

서버&백엔드/🔥 JAVA

JAVA | StringBuilder

StringBuilderStringBuilder 는 자바에서 문자열을 다루기 위한 클래스 중 하나로, 가변(mutable)문자열을 지원합니다. 즉, StringBuilder를 사용하면 문자열을 쉽게 수정, 추가, 삭제, 및 변경할 수 있습니다. 기본적으로 String 클래스는 불변(immutable) 객체로, 한 번 생성된 문자열을 수정할 수 없으므로 새로운 문자열을 생성해야 합니다. 반면, StringBuilder는 내부적으로 문자열을 수정할 수 있도록 설계되어 있어 성능상 이점이 있습니다. 주요 특징가변성 : StringBuilder 는 내부적으로 문자열을 저장하는 배열을 사용하여, 문자열을 변경할 때마다 새로운 객체를 생성하지 않고 기존의 배열을 수정합니다.효율성 : 문자열을 여러 번 수정해야할 경..

서버&백엔드/🔥 JAVA

Java | 스트림(Stream) 완전 정복 - 문자형

문자열 자체는 Stream을 직접 생성할 수는 없지만, 문자열을 문자 배열로 변환하거나, 문자열을 List로 변환한 후 Stream을 사용할 수 있습니다. 1. 문자열을 문자 스트림으로 변환하기String의 chars() 메서드를 사용하면 문자열의 각 문자를 IntStream 으로 변환할 수 있습니다. 이후 map() 과 같은 메서드를 사용하여 각 문자를 변환할 수 있습니다.String str = "Hello"; str.chars() .mapToObj(c -> (char) c) // IntStream을 Character Stream으로 변환 .forEach(System.out::println); // 각 문자를 출력 2. 특정 조건에 맞는 문자 필터링문자 스트림에서 특정 조건에 맞는 문자만 필터링할 수 ..

이재원
'서버&백엔드/🔥 JAVA' 카테고리의 글 목록 (4 Page)