본문 바로가기

JavaCode(review)

ArrayList 기본 - GroceryList -console입력추가/제거/검색

반응형

Grocery Class code.

import java.util.ArrayList;
import java.util.StringJoiner;

public class GroceryList {              //array list는 a class개념이다.>role : resize array

   //cf) private int[] myNumbers;            //array define
    private ArrayList<String> groceryList = new ArrayList<String>(); //ArrayList "groceryList"define


    public void addGroceryItem(String item){            //method add
        groceryList.add(item);
    }
    public void printGroceryList(){                     //method print
        System.out.println("You have"+groceryList.size()+"item in your grocery list");  //size특정짓지 않는다.
        for(int i=0; i<groceryList.size(); i++){                        //index = 0부터
            System.out.println((i+1)+"."+groceryList.get(i));           //size1 = index 0(i=index)
        }
    }
                                                        // method set (modify)
    public void modifyGroceryItem(int index, String newItem){
        groceryList.set(index,newItem);
        System.out.println("Grocery item"+ (index+1) +"has been modified");  //size 2번 수정
    }

    public void removeGroceryItem(int index){           //method remove
        String theItem = groceryList.get(index);                //index입력 ->string전환
        groceryList.remove(index);
    }
    public String findItem(String searchItem){              //method search(contain)
       // boolean exists = groceryList.contains(searchItem);     //간단한 방법
                                                                //그외 방법(indexOf)
        int index = groceryList.indexOf(searchItem);            //->return index
        if(index>=0){
            return groceryList.get(index);
        }
        return null;   // 없는경우
    }

}

Print out Code.

import org.w3c.dom.ls.LSOutput;

import java.util.Scanner;

public class Main {

    private static Scanner scanner = new Scanner(System.in);    //console 인식
    private static GroceryList groceryList = new GroceryList();     //object define

    public static void main(String[] args) {                //print out method
        boolean quit = false;                   // boolean default = false
        int choice =  0;
        printInstructions();        //사용설명서 출력
        while(!quit){                               // !quit 이란 quit ==false 경우란 뜻
            System.out.println("Enter your code");
            choice = scanner.nextInt();             //console 입력
            scanner.nextLine();

            switch (choice) {
                case 0:
                    printInstructions();
                    break;
                case 1:
                    groceryList.printGroceryList();
                    break;
                case 2:
                    addItem();
                    break;
                case 3:
                    modifyItem();
                    break;
                case 4:
                    removeItem();
                    break;
                case 5:
                    searchForItem();
                    break;
                case 6:
                    quit = true;
                    break;
            }
        }
    }

    public static void printInstructions(){         //시스템 설명서 출력
        System.out.println("\npress");                           //\n or \r:줄바꿈.\t들여쓰기.
        System.out.println("\t 0 - To print choice options.");
        System.out.println("\t 1 - To print the list of grocery items.");
        System.out.println("\t 2 - To add an item to the list.");
        System.out.println("\t 3 - To modify and item in the list");
        System.out.println("\t 4 - To remove an item in the list");
        System.out.println("\t 5 - To search for an item in the list");
        System.out.println("\t 6 - To quit the application");
    }
    public static void addItem(){
        System.out.println("Please enter the grocery item: ");
        groceryList.addGroceryItem(scanner.nextLine());             //String console입력(nextLine)
    }
    public static void modifyItem(){
        System.out.println("Enter item number: ");
        int itemNo = scanner.nextInt();                 //Int console 입력(nextInt)
        scanner.nextLine();
        System.out.println("Enter replacement item: ");
        String newItem = scanner.nextLine();                //String console 입력 -nextLine
        groceryList.modifyGroceryItem(itemNo-1, newItem);       //index , newItem
    }
    public static void removeItem(){
        System.out.println("Enter item number: ");
        int itemNo = scanner.nextInt();
        scanner.nextLine();
        groceryList.removeGroceryItem(itemNo-1);           //index
    }
    public static void searchForItem(){
        System.out.println("Item to search for: ");
        String searchItem = scanner.nextLine();         //String console 입력(nextLine)
        if(groceryList.findItem( searchItem) !=null){
            System.out.println("Found" + searchItem+"in the grocery list");
        }else{
            System.out.println(searchItem + "is not in the grocery list.");
        }

    }

}