자바 ArrayList 쇼핑카트 챌린지

JavaBeginner
지금 연습하기

소개

프로그래밍 세계에서 가장 진보된 이커머스 플랫폼인 JavaMart 에 오신 것을 환영합니다! 신입 주니어 개발자로서 여러분의 첫 번째 임무는 온라인 쇼핑몰의 핵심 기능인 동적 쇼핑카트 시스템 구현을 돕는 것입니다.

수석 개발자가 이미 ArrayList 를 사용하여 쇼핑카트의 기본 구조를 잡아두었습니다. 여러분의 미션은 카트에서 아이템을 삭제하는 기능을 추가하여 구현을 완성하는 것입니다. 이 기능은 JavaMart 고객들에게 원활한 쇼핑 경험을 제공하기 위해 반드시 필요합니다.

JavaMart 가 온라인 쇼핑의 혁신을 일으킬 수 있도록 이번 챌린지에 도전할 준비가 되셨나요? 이제 코딩을 시작해 봅시다!

쇼핑카트 구현 완성하기

이번 실습에서는 디지털 쇼핑카트 관리라는 실제 프로그래밍 시나리오를 직접 경험하게 됩니다. 이커머스 플랫폼의 필수 기능을 작업하면서 데이터 구조 조작 및 오류 처리 능력을 연마하게 될 것입니다. 이 과제를 완수하면 견고하고 사용자 친화적인 소프트웨어 컴포넌트를 만드는 실무 경험을 쌓을 수 있습니다. 자, 이제 가상 쇼핑 환경을 더 매끄럽게 만들어 봅시다!

과제

  • ~/project 디렉토리에 미리 생성된 ShoppingCart.java 파일을 엽니다.
  • 코드 내의 TODO 주석을 찾습니다.
  • 쇼핑카트에서 아이템을 제거하는 removeItem 메서드를 구현합니다.

요구사항

  • ~/project 디렉토리에 ShoppingCart.java 파일이 존재해야 합니다.
  • removeItem 메서드를 다음과 같이 완성하세요:
    • items라는 이름의 ArrayList 에서 지정된 인덱스 (index) 에 있는 아이템을 삭제해야 합니다.
    • 인덱스가 유효하지 않은 경우 (0 보다 작거나 리스트의 크기보다 크거나 같은 경우), "Invalid index"를 출력하고 리스트를 수정하지 않아야 합니다.
  • 코드의 다른 부분은 수정하지 마세요.

실행 예시

올바르게 구현되었다면, main 메서드를 실행했을 때 다음과 같은 결과가 출력되어야 합니다:

cd ~/project
javac ShoppingCart.java
java ShoppingCart

출력 예시:

Items in cart: [Laptop, Mouse, Keyboard]
Removing item at index 1
Items in cart after removal: [Laptop, Keyboard]
Removing item at invalid index
Invalid index
Items in cart after invalid removal: [Laptop, Keyboard]
✨ 솔루션 확인 및 연습

요약

이번 챌린지에서 여러분은 자바의 ArrayList 를 사용하여 쇼핑카트 시스템의 핵심 기능을 구현했습니다. 이 과정에서 이전에 학습한 자바 배열 및 ArrayList 실습의 주요 개념들을 다시 한번 다졌습니다:

  1. ArrayList 활용: ArrayList 의 remove 메서드를 사용하여 특정 인덱스의 아이템을 삭제하는 법을 익혔습니다.
  2. 입력값 검증: 아이템을 삭제하기 전에 주어진 인덱스가 유효한 범위 내에 있는지 확인하는 절차를 거쳤습니다.
  3. 조건문 사용: if-else 문을 활용하여 정상적인 상황과 유효하지 않은 인덱스가 들어온 상황을 구분하여 처리했습니다.

이 챌린지를 완수함으로써 기본적인 자바 기술을 연습했을 뿐만 아니라, 실제 서비스에서 흔히 쓰이는 실용적인 기능을 직접 만들어 보았습니다. 쇼핑카트는 이커머스 플랫폼의 중추적인 구성 요소이며, 아이템을 자유롭게 추가하고 삭제할 수 있는 기능은 훌륭한 사용자 경험을 위한 필수 요소입니다.

ArrayList 는 매우 다재다능하며 addremove 외에도 유용한 메서드를 많이 제공합니다. JavaMart 에서의 여정을 계속하며 다음과 같은 기능을 추가해 쇼핑카트를 고도화해 볼 수도 있습니다:

  • 인덱스 대신 이름으로 아이템 찾기
  • 아이템 수량 관리 기능
  • 카트에 담긴 아이템의 총 금액 계산

작성한 코드를 계속해서 연습하고 실험해 보세요. ArrayList 를 비롯한 자바 컬렉션을 더 많이 다뤄볼수록 프로그램 내에서 데이터를 자유자재로 다루는 데 익숙해질 것입니다. JavaMart 의 이커머스 개발 세계에 오신 것을 다시 한번 환영합니다!