튜터님의 코드로부터 배운 보고 배운 점
: 같은 기능을 구현해도 코드는 너무 다르다. 오랜시간 축적된 지혜를 잘 흡수해야할 듯 하다. 오늘은 그저 강의 들으며 배운 것들 다음에 내가 적용하기 위해 정리해본다.
삼항연산자 활용
Long maxId = memoList.size() > 0 ? Collections.max(memoList.keySet()) + 1 : 1;
삼항연산자라는 걸 완전히 잊고 있다가 강의 도중 만났는 데, 다시 보이게 된다.
만약 저걸 안했더라면 아래처럼 코드를 했을 것이다.
Long maxId = 0;
if(memoList.size() > 0){
maxId = Collections.max(memoList.keySet()) + 1;
} else {
maxId = 1;
}
Map -> List
public List<MemoResponseDto> getMemos() {
// Map To List
List<MemoResponseDto> responseList = memoList.values().stream()
.map(MemoResponseDto::new).toList();
return responseList;
}
stream() : Map에서 가져온 값들을 for문처럼 돌려준다.
return new
이렇게 반환하면 List 에 자동으로 추가되고 List를 한번에 출력한다.
public List<MemoResponseDto> getMemos() {
...
return new MemoResponseDto(id, username, contents);
}
'Back-End > Java' 카테고리의 다른 글
TIL 230712 : 자바의 람다식 짚고 넘어가기(2) 메소드 참조 (0) | 2023.07.13 |
---|---|
TIL 230711 : 자바의 람다식 짚고 넘어가기. (0) | 2023.07.12 |
TIL 230612 : 날짜 시간 데이터와 인사하기. (2. SimpleDateFormat) (0) | 2023.06.12 |
TIL 230609 : 날짜 시간 데이터와 인사하기. (1. Calendar, Date) (0) | 2023.06.09 |
TIL 230607 : ArrayList와 List 사이. (feat. 업캐스팅, 다운캐스팅) (0) | 2023.06.07 |