[JAVA]리스트 초기화 오류

2025. 3. 5. 14:55·프로젝트/트러블슈팅

intro

  • 프로젝트를 진행하며 발생한 문제 상황과 해결 과정들을 상세히 기록하고 추후에 같은 문제가 발생 했을때 빠르게 문제 해결하기 위해 트러블 슈팅을 정리할려고 한다.
  • 기록하는 습관을 기르기 위해 프로젝트 기간동안 꾸준히 작성할 것 이다.

계산기 프로그램을 하는 과정에서 입력을 받는 main 클래스와  연산을 하는 클래스를 분리하였다.

연산 결과를 저장하는 리스트와 기능을 연산 클래스(OperatorType)에 추가하였는데 main 클래스에서 저장되는 결과값이 계속 초기화 되는 현상이 발생했다.

 

⚠️ 1.문제 상황 발생

첫번째 결과값을 조회한 후 두번째 결과값을 저장시켜 다시 조회하면 하나의 결과값만 출력되게 된다.

 

 

 

🔎 2.원인 추론

리스트가 계속 초기화 된다는 것은 반복문에서 문제가 있다고 생각했다.

 

 

  • matchOperatorType(operator) : 입력한 연산자와 enum에 있는 연산자가 동일한지 체크하는 메서드
  • setResult(result):enum에 있는 operate로 연산을 진행한후 arrayList에 추가하는 메서드

위의 코드는 while 문안에 있는 코드이다.

처음 코드를 작성할 때 matchOperatorType은 결과값을 리스트에 넣는거와는 관련이 없다고 생각해서 OperatorType 의 enum 클래스를 반복문안에 작성하였다.

그런데 생각해보면 enum클래스가 반복문 안에서 호출된다면 operatorType 에서 가져오는 모든 메소드들이 초기화 된다는 말과 같다.

 

📝  3.해결방안

OperatorType 을 while 문 밖에 호출했다.

 

📌4.결과 확인

지금까지 저장한 값들이 모두 출력되었다.

 

 

✒️회고

- 아주 기본적이고 실수에 가까운 오류이지만 프로젝트 진행 시에 위 오류 내용처럼 클래스를 가져오는 일들이 많을 것이다. 이런 오류를 첫 코드 작성시에 발생 시킨다면 수많은 코드를 짰을 때 찾아내고 수정하는 게 불필요한 시간을 소요 시킬거 같다. 처음에 작성할 때 전체적인 클래스를 구성하고 틀부터 완벽하게 만드는 것이 중요하다고 생각했다.

'프로젝트 > 트러블슈팅' 카테고리의 다른 글

[Spring]무한 스크롤 + Enum 정렬 트러블슈팅  (2) 2025.04.23
[Spring/Security] 403 Forbidden? 권한 문제가 아니라 CSRF 이 원인이였다  (0) 2025.04.21
[Spring]Filter 예외처리  (0) 2025.04.03
[JAVA]Enum 에 선언된 메소드 호출오류  (0) 2025.03.13
[JAVA]입력 버퍼비우기 - (Next() , NextLine())  (0) 2025.03.05
'프로젝트/트러블슈팅' 카테고리의 다른 글
  • [Spring/Security] 403 Forbidden? 권한 문제가 아니라 CSRF 이 원인이였다
  • [Spring]Filter 예외처리
  • [JAVA]Enum 에 선언된 메소드 호출오류
  • [JAVA]입력 버퍼비우기 - (Next() , NextLine())
코딩로봇
코딩로봇
금융 IT 개발자
  • 코딩로봇
    쟈니의 일지
    코딩로봇
  • 전체
    오늘
    어제
    • 분류 전체보기 (152)
      • JavaScript (8)
      • SQL (11)
      • 코딩테스트 (30)
        • Java (15)
        • SQL (13)
      • Java (10)
      • 프로젝트 (30)
        • 트러블슈팅 (10)
        • 프로젝트 회고 (18)
      • git,Github (2)
      • TIL (38)
      • Spring (20)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    java #arraylist #list #배열
    스파르타 코딩 #부트캠프 #첫ot
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코딩로봇
[JAVA]리스트 초기화 오류
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.