JAVA 5

정규표현식

보통 String.matches, replaceAll 에 많이 사용하므로 거기에 맞춰서 정리1. 기본적인 정규 표현식 요소1.1 문자 클래스(Character Classes).임의의 한 문자 (개행 제외)[abc]a, b, c 중 하나[^abc]a, b, c를 제외한 어떤 문자[a-z]소문자 알파벳 한 글자 (a~z)[A-Z]대문자 알파벳 한 글자 (A~Z)[0-9]숫자 (0~9)[a-zA-Z0-9]영문 대소문자 + 숫자\d숫자 (0-9) (== [0-9])\D숫자가 아닌 문자 (== [^0-9])\w알파벳 또는 숫자 또는 _ ([a-zA-Z0-9_])\W\w가 아닌 문자 (공백, 특수 문자 등)\s공백 문자 (스페이스, 탭, 개행 등)\S공백이 아닌 문자1.2 앵커(Anchors)정규식설명^문자열의 시..

JAVA 2025.03.06

ENUM - 열거형

자바 공부가 너무 처참해서 다시 공부하기로 했다.이번에는 내가 제일 모르는 ENUM에 대해서 많이 찾아보고 직접 쳐보고 배운 것을 정리하겠다.   ENUM이란?열거, 목록 등으로 상수들의 집합이다.  보통 상태를 표현할 때 많이 쓰는 것 같다. (대부분 배송 상태, 날짜 등으로 예제를 갖는다.) ENUM이 있기 전에는 private static final 자료형 상수명  이런 식으로 많이 사용했지만 ENUM이 있으니 ENUM을 사용하면 된다.  왜 사용하는가 ?type-safety(타입 안정성) 보장단순성, 가독성 upENUM은 싱글톤 객체변경 범위 최소화컴파일 에러 (체크 에러)switch 문 사용 가능 사용 방법enum Season { SPRING, SUMMER, AUTUMN, ..

JAVA 2025.02.10

배열의 복사 : clone() 메서드 자바

✔️ 1차원 배열 깊은 복사얕은 복사는 그냥 대입하면 되므로 깊은 복사를 중점으로 정리 1차원 배열 깊은 복사는 배열의 메서드인 clone() 을 사용하면 된다.  int[] arr = {1,2};int[] arr2 = arr.clone();   Testpublic class Main { public static void main(String[] args) throws IOException { int[] arr = {1, 2}; int[] arr2 = arr.clone(); arr[0] = 55555; for (int i : arr) { System.out.print(i + " "); } System.ou..

JAVA 2024.09.03

Lambda & Stream

✔️ lambda(람다)람다식은 메서드로 전달할 수 있는 익명 함수를 단순화한 코드 블록() -> {}() : 파라미터-> : 화살표{} : 실행문람다식은 함수 자체를 전달 인자로 보내거나 변수에 저장하는 것이 가능람다식에서 타입이 예측가능하다면 생략 가능특정 람다식을 사용하여 변수에 담는데 그 변수의 타입은 함수형 인터페이스 타입이다.함수형 인터페이스 : 하나의 추상 메서드를 갖는 인터페이스함수 디스크립터 : 함수형 인터페이스의 추상 메서드 시그니처메소드 시그니쳐 : 메소드의 이름 + 메소드의 파라미터 + 파라미터의 수  함수형 인터페이스함수 디스크립터 기본형 특화 PredicateT -> booleanIntPredicate, LongPredicate, DoublePredicateConsumerT ->..

JAVA 2024.08.17

Optional<T>

✔️ Optional이란 ?Optional은 NullPointException 발생 방지를 위해 사용 Java8Optional는 null 이 올 수 있는 값을 감싸는 Wrapper 클래스  ✔️ null 체크기존에는 if문을 사용해서 null 체크List list = store.get("itemName");if ( list == null) { log.info("없는 상품"); // 처리 }public final class Optional { /** * 빈 optional을 공통객체로서 가지고 있다. */ private static final Optional EMPTY = new Optional(null); /** * null이 아닐 경우 값이 담기고, nul..

JAVA 2024.08.17