Java로 실무 비즈니스 로직을 다루다 보면, 데이터의 개수가 가변적인 상황을 필연적으로 마주하게 된다. 배열(Array)처럼 고정된 크기의 그릇으로는 사용자 수나 주문량이 폭증하는 동적인 환경에 유연하게 대처하기 어렵다.오늘은 Java Collections Framework가 어떻게 이 '크기의 제약'을 우아하게 해결하는지, 그리고 실무에서 가장 빈번하게 쓰이는 ArrayList와 HashMap의 내부 동작 원리를 파헤쳐 본다. Environment: Windows 11, JDK 21, VS Code, Antigravity1. 고정된 크기가 불러오는 재앙 (Bad Code)신입 개발자가 흔히 저지르는 실수 중 하나는 "학생 수는 대략 30명이니까 30개짜리 배열을 만들면 되겠지?"라고 단정 짓는 것이다..