1. 이슈
asList로 생성한 List<String> 에 다른 List를 add해주려다가 에러를 만났다. (참고 : https://blog.woniper.net/350)
결론부터는 immutable List에 조작하려다가 에러가 난 것이다.
2. 왜 이슈가 났는가
List에 여러가지 구현체가 있다는 것을 몰랐고, immutable/mutable에 대한 이해가 부족했다. 막연하게 List니깐 조작이 가능할 것이다 라는 생각에 해버린 것이다.
3. 해결방안
1) mutable/immutable 의 구현체들에 대해 정확히 파악하고 쓸 것.
2) Collections 에 대한 이해 (살짝 새는 얘기일 수도 있지만, List로 인자 받을 것을 Collections로 받으면 더욱 추상적이어 유연한 메소드가 된다.)
3) immutable인 경우에는 mutable일 수 있게 할 것. (예 : HashSet으로 감싼다거나)
'프로그래밍 공부 > Java' 카테고리의 다른 글
orElse 와 orElseGet에 관한 좋은 글 (0) | 2021.07.28 |
---|---|
자바 직렬화(Serializable) 에 대해서.. (0) | 2021.06.20 |
[Lamda] :: (0) | 2021.06.03 |
[Java.util]Optional (0) | 2021.05.26 |
@Transactional (0) | 2021.05.25 |
댓글