토이 프로젝트로 간단한 메모장 기능을 만들고 있는데, 리스트에 저장한 내용이 계속 사라져서 고민입니다.
코드:
import java.util.*;
public class Main {
public static void main(String[] args) {
MemoManager manager = new MemoManager();
manager.addMemo("안녕하세요");
System.out.println(manager.getMemos());
}
}
class MemoManager {
List<String> memos = new ArrayList<>();
public void addMemo(String text) {
List<String> memos = new ArrayList<>();
memos.add(text);
}
public List<String> getMemos() {
return memos;
}
}
오류: []
시도: addMemo 메서드 안에서 add를 제대로 호출했는지 확인했고, 리스트 변수 이름도 맞게 썼는데 왜 안 들어가는지 모르겠어요.
질문: addMemo 메서드에서 값을 넣었는데 왜 getMemos를 하면 빈 리스트가 출력되는 건가요?
댓글5
-
빗방울
2026.10.30 14:44
-
빗방울
2026.10.30 15:25
초보 때 다들 한 번씩 겪는 실수임ㅋㅋ
그거 고치고 나면 잘 될 듯요
-
빗방울
2026.10.30 17:55
변수 스코프 개념 헷갈리면 진짜 답답함ㅋㅋ
이거 고치고 나면 리스트 관련해서는 이제 안 헷갈리실 듯요.
-
빗방울
2026.10.30 18:17
이거 IDE에서 변수명 추천해주니까 무심코 엔터 쳐서 그렇게 된 거 아님?ㅋㅋ 다음부터는 자동완성 조심하세요.
-
빗방울
2026.10.30 18:23
ㄹㅇ 인정ㅋㅋ
저도 예전에 자동완성 믿고 쳤다가 한 시간 헤맨 적 있음요
진짜 조심해야 함ㅋㅋ
모든 이야기1455
가벼운 안부부터 깊은 생각까지, 함께 나눠요.
총 1455개의 이야기
메서드 안에 리스트 또 만드신듯ㅋㅋ
그거 때문에 지역 변수에만 저장되고 사라지는 것 같아요.
중복 선언 지워보세요.