본문 바로가기

Java55

[Java 2편] stream 내에서 CheckedException, RuntimeException 처리 source 는 Github 에 있습니다. 목차는 Java series 에 있습니다. [Java 2편] stream 내에서 CheckedException, RuntimeException 처리 source code stream 내에서 CheckedException 과 RuntimeException 처리 관련 코드 예시에 대해서 정리했습니다. public class StreamWithExceptionTest { @Test public void stream_내에서_RuntimeException_테스트() { String[] strings = new String[] {"hello", "world", "hi"}; List list = Arrays.asList(new String[]{"abcde", "test", .. 2022. 6. 28.
[Java 1편] stream 내에서 값이 제일 큰 객체 추출 source 는 Github 에 있습니다. 목차는 Java series 에 있습니다. [Java 1편] stream 내에서 값이 제일 큰 객체 추출 설명 stream 내에서 숫자 값이 제일 큰 객체를 추출합니다. max 와 Comparator.comparing 을 조합해 amount 가 가장 큰 객체를 추출합니다. source code package stream; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.Comparator; import java.util.L.. 2022. 6. 27.
Java State Pattern 0. 디자인 패턴은 무엇이고 왜 사용하는가? 이러한 상황에서는 이런 패턴을 사용하라. 이러한 상황에서 왜 이 패턴을 쓰는지 명확하게 알아야 한다. 프로그램 구조 파악 용이, 의사소통 좋아질 수 있음. 1. State 패턴 개념 객체 내부의 상태에 따라 객체의 동작 방식이 달라지는 패턴 하나의 인터페이스를 두고 각 객체들은 이를 구현하여 상태에 따라 다른 행위를 하는 패턴 public interface NumState { void test(); } public class OneState implements NumState ( void test() { xxx } ) public class TwoState implements NumState { void test() { } } public class Main .. 2021. 4. 4.
java Generic, WildCard 정리 Generic, WildCard 정리 Generic 개념 입력한 객체 타입을 보장하기 위해 사용 매개변수 E: Element, 컬렉션의 요소를 표시할 때 사용 K: Key, V: Value, T: Class Type Example 아래 예시를 보면 Key, Value 형태로 매개변수가 설정된 Generic 이다. String 으로 Key, Value 를 초기화했으며, key, value 는 String 만 올 수 있다. 만약, 다른 타입을 입력하면 컴파일 단계에서 에러가 발생한다. 이렇게 하는 목적은 다른 값이 들어오는 것을 컴파일 단계에서부터 체크하겠다는 것. public interface Map { V put(K key, V value); } Map map = new HashMap(); WildCar.. 2021. 3. 22.