반응형
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.");
}
}
}
'JavaCode(review)' 카테고리의 다른 글
mobilePhone contact code. (0) | 2020.05.30 |
---|---|
GroceryList - String으로 console 입력시 코드 (0) | 2020.05.30 |
ReverseArrayChallenge / (0) | 2020.05.20 |
ArrayChallenge / console값 입력 후 최소값 구하기. (0) | 2020.05.20 |
ArrayChallenge/ console 입력 값/ 큰 순서대로 나열(descending) (0) | 2020.05.19 |