728x90

Dev/Java 15

[Java] CLOB 데이터 String 변환

target: CLOB 데이터 Java에서 처리 방안 method: ▶ 같이 보면 좋을 내용 https://pu3vig.tistory.com/119 [Oracle] Oracle 데이터를 Json 형태로 변환 [오라클 12c 이상] target: Oracle 데이터를 Json 형태로 변환 method: 1. JSON_OBJECT [Oracle 12c release 2(12.1.0.2) 이상] /* - 테이블 명 : TB_COL - 데이터 형식 > SELECT SEQ, ID, NAME, TYPE FROM TB_COL; >> Result SEQ | ID | NAME | TYPE 1 | COL1 | 컬럼1 | pu3vig.tistory.com https://pu3vig.tistory.com/120 [Oracle..

Dev/Java 2023.10.31

자바의 정석 - 람다식(Lambda Expression)

target: 자바의 정석 - 람다식(Lambda Expression) 자바의 정석(남궁성 저) 2권 학습내용 정리 method: 1. 람다식 메서드를 하나의 식(expression)으로 표현한 것. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로 람다식을 익명함수(anonymous function)라고도 한다. 람다식은 메서드의 매개변수로 전달될 수 있고, 메서드의 결과로 반환될 수 있다. 즉, 메서드를 변수처럼 다루는 것이 가능하다. 2. 람다식 작성하기 메서드에서 이름과 반환타입 제거 매개변수 선언부와 몸통{} 사이에 -> 추가 // 기존 반환타입 메서드이름 (매개변수 선언) { ... } // 람다식 (매개변수 선언) -> { ... } 반환값이 있는 메서드는 return 대신 식..

Dev/Java 2022.12.20

[Java] stream() 활용

target: 스트림을 활용한 필터링 method: 1. 필터링 List numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3); // 고유 요소 필터링 // filter에 해당하는(=Predicate) 요소만 전체 스트림에서 반환 // Predicate는 return 형태가 boolean 형태인 함수 List evenList = numbers.stream() .filter(i -> i % 2 == 0) .distinct() .collect(toList()); // evenList = [2, 4, 6, 8] List noticeList = boardList.stream() .filter(Board::noticeYn) .collect(toList()); ..

Dev/Java 2022.09.23

[Java] 문자열 찾기 contains, indexOf, matches

target: Java에서 문자열 찾기 (contains, indexOf, matches) method: String str = "Javascript,Java"; /** * 1. contains * 문자열 검색 시, 대소문자를 구분하고, return 타입은 boolean */ System.out.println(str.contains("java")); // false System.out.println(str.toLowerCase().contains("java")); // true System.out.println(str.contains("Java")); // true /** * 2. indexOf * 문자열 검색 시, 대소문자를 구분하고, 매치하는 첫번째 문자열의 포지션을 반환, return 타입은 int..

Dev/Java 2022.09.16

[Java] 문자열 찾기 contains, indexOf, matches

target: Java에서 문자열 찾기 (contains, indexOf, matches) method: String str = "Javascript,Java"; /** * 1. contains * 문자열 검색 시, 대소문자를 구분하고, return 타입은 boolean */ System.out.println(str.contains("java")); // false System.out.println(str.toLowerCase().contains("java")); // true System.out.println(str.contains("Java")); // true /** * 2. indexOf * 문자열 검색 시, 대소문자를 구분하고, 매치하는 첫번째 문자열의 포지션을 반환, return 타입은 int..

Dev/Java 2022.09.16

자바의 정석 - 스트림(Stream)

target: 자바의 정석 - 스트림(Stream) 자바의 정석(남궁성 저) 2권 학습내용 정리 method: 1. 스트림 스트림은 데이터 소스를 추상화하고, 데이터를 다루는데 자주 사용되는 메서드들을 정의해 놓았다. Collection이나 Iterator 같은 인터페이스를 이용해서 컬렉션을 다루는 방식을 표준화 했지만, 각 컬렉션 클래스에는 같은 기능의 메서드들이 중복해서 정의되어 있다. List를 정렬할 때는 Collection.sort()를 사용해야하고, 배열을 정렬할 때는 Arrays.sort()를 사용해야 한다. 이렇게 데이터 소스마다 다른 방식으로 다루어야하는 문제점을 해결해주는 것이 Stream 이다. // 기존 String[] strArr = {"aaa", "bbb", "ccc"}; Lis..

Dev/Java 2022.08.08

[Java 8+] Stream to map 및 Method Reference

target: String[] to Stream & Stream에서 Map으로 변환, 그리고 Method Reference method: 1. String[][] to Stream 2차원 String 배열을 Stream으로 변환 시, Stream.of() 또는 Arrays.stream()을 통해 Stream을 생성 // String[][] to Stream String[][] vehicle = new String[][] {{"CAR", "Audi"}, {"BIKE", "Harley Davidson"}}; Stream stream = Stream.of(vehicle); * 2차원 String 배열을 순차적으로 가져오기 위해서 Stream으로 변환 * Stream의 첫번째 요소는 String[0], 두번째 ..

Dev/Java 2022.08.08

Stream을 통한 Map에서의 원하는 키 추출 및 별도 Map 생성

target: Java Stream + 람다 표현식을 사용하여 원하는 키 추출하여 별도의 Map을 생성 method: 1. Lambda Expression 익명함수(Anonymous Function)으로 method를 변수처럼 다룰 수 있음 ※ Lambda 관련 자세한 내용은 가장 밑의 source의 원본 출처 확인 2. Stream 데이터 소스를 추상화하고, 데이터를 다루는데 자주 사용되는 method를 정의 Collection이나 Iterator 같은 인터페이스를 이용하여 Collection을 다루는 방식을 표준화 하였으나, 각 Collection Class에는 같은 기능의 method들이 중복되어 정의되어 있음 (ex. List 정렬 = Collection.sort(), 배열 정렬 = Arrays...

Dev/Java 2022.08.05

람다 표현식 내에서 표현식 외부의 변수 사용

target: Java의 람다 표현식에서의 표현식 외부의 변수 사용 method: 1. Lambda Expression Method를 하나의 식으로 표현한 것 Method를 람다식으로 표현할 경우, 이름/반환값이 없어지므로, 이를 익명함수(Anonymous function)이라고도 함 Method를 변수처럼 다루는 것이 가능 2. 지역 변수 제약 Java8에서의 람다 표현식을 사용할 때, 람다 표현식 내부에서 자유변수(람다 표현식 기준 외부의 변수)의 값을 설정할 수 없음 람다 표현식 내부에서 사용이 불가능한 것이 아니라, 외부 변수를 재정의할 수 없음을 의미 이는 js에서 const 타입과 유사성을 보이지만, const 타입은 java의 final와 동일하고, 이 effectively final 변수는..

Dev/Java 2022.08.05
728x90