Java 8 2

JAVA의 Optional 정리 (Java 8 기준)

오늘은 Java의 Optional에 대해서 정리해보려고 한다. Optional class는 Java 8 부터 도입된 클래스로 공식 API 설명에 따르면 "null이 아닌 값을 포함하거나 포함하지 않을 수있는 컨테이너 객체" 라고 한다. 마이바티스나 아이바티스를 쓴다거나 Java 8버전 이하로 개발을 한다면 익숙해지기 어려운 개념인 것 같은데, 나의 경우는 회사에서 JPA를 사용하고 있고, Spring JPA의 JpaRepository의 findOne, findById.. 등의 결과 값이 Optional로 돌아오기 때문에 익숙해질 수 밖에없다. 여기서는 내가 주로 사용하는 Optional의 메소드만 코드로 정리 할 예정이고, 이외의 메소드는 아래표나 공식 문서를 참조하는 것이 좋을 것 같다. (아래 표도 ..

JAVA 2021.03.22

JAVA에서 리스트안의 원소를 중복제거하는 방법?

개발에서 중복되는 데이터를 제거하는 작업은 빈번하게 일어나게 되는데, 그때 어떤 방법을 이용해서 중복을 제거할 것 인가가 항상 고민이였다, 그래서 활용가능한 방법들을 간단하게나마 정리하려고 한다. 먼저 리스트안의 중복을 제거하는 방법은 몇 가지가 있는 것 같은데, 대표적으로 아래와 같은 방법이 있는 것 같다. 1. for문을 이용해 리스트를 순회하며 제거(contains를 이용 or 변수를 이용) 2. Set자료형을 이용하여 중복을 제거 3. Stream의 distinct를 이용하는 방법 이외에 다른 방법이 더 있을 수도 있겠지만, 당장 생각나는 방법만 정리하려고 한다. 백문이불여일견이라고, 코드를 통해 정리 하면 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ..

JAVA 2020.11.04