본문 바로가기

Program/JAVA

Bank Project, CMD에서 JAVA실행

ArrayList이용한 작은 프로젝트

import java.util.ArrayList;
import java.util.Scanner;

public class play {
    public static void main(String[] args) {
        ArrayList<customerInfo> m = new ArrayList<>();
        customerInfo c =null;
/*
customerInfo b = null
for(int idx=0;idx<m.size();idx++){ -> m.size()를 사용하게 되면 런타임이나 아웃오브바운드가 생길 수 있다. 대안 while+break
b= new customerInfo();
}
 */
        while(true){
            try{
                System.out.println("If you want exit input 'exit' in name space");
                Scanner scn = new Scanner(System.in);
                System.out.println("input name");
                String name = scn.nextLine();
                if(name.equals("exit")) throw new Exception();
                System.out.println("input account");
                String account = scn.nextLine();
                System.out.println("input cash");
                int cash = scn.nextInt();
                c = new customerInfo(name, account, cash);
                m.add(c);
            }catch (Exception e){
                System.out.println("stop add info");
                break;
            }
        }
        System.out.println("input search name or account");
        Scanner input = new Scanner(System.in);
        String info = input.nextLine();
        for(int idx=0; idx < m.size(); idx++){
            if(m.get(idx).contains(info)){
                System.out.println("success");
                System.out.println("name : " +m.get(idx).name+" account : "+m.get(idx).account+" cash : "+m.get(idx).cash);
                break;
            }else System.out.println("fail"); break;
        }

        System.out.println("input search cash");
        Scanner search = new Scanner(System.in);
        System.out.println("Input minimal range");
        int inpUpper = search.nextInt();
        System.out.println("Input max range");
        int inpUnder = search.nextInt();

        for(int idx=0; idx<m.size();idx++){
            if(m.get(idx).range(inpUpper,inpUnder)) System.out.println(m.get(idx).name);
                else System.out.println("not info in range");
        }



    }


}
import javax.naming.event.ObjectChangeListener;
import java.util.Scanner;

public class customerInfo {
    String name, account;
    int cash;

    public customerInfo(String name, String account, int cash) {
        this.name = name;
        this.account = account;
        this.cash = cash;
    }

    public void putCash(){
        int Icash;
        Scanner putcash = new Scanner(System.in);
        Icash = putcash.nextInt();
        if(Icash<0){
            System.out.println("Input upper 0");
        }else {
            this.cash += Icash;
            System.out.println(this.cash);
        }
    }
    public void outCash(){
        int Ocash;
        Scanner outcash = new Scanner(System.in);
        Ocash = outcash.nextInt();
        if(Ocash>this.cash){
            System.out.println("Input under cash");
        }else {
            this.cash -= Ocash;
            System.out.println(this.cash);
        }
    }
    public int cash(){
        return this.cash;
    }

    public void putCustomerinfo(){
        System.out.print("name : "+this.name);
        System.out.print(" account : "+this.account);
        System.out.println(" cash : "+this.cash);
    }

    public boolean contains(String o){
        if(o.equals(name)||o.equals(account)){
            return true;
        }else return false;
    }

    public boolean range(int upper,int under){
        if(upper < cash && cash<under){
            System.out.println("Success");
            return true;
        }else  return false;
    }

}

 

메뉴 창 설정 추가 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Scanner;

public class play {
    public static void main(String[] args) {
        ArrayList<customerInfo> m = new ArrayList<>();
        customerInfo c =null;
        int menu=0;
        String[] cls = new String[] {"cmd.exe", "/c", "cls"};


        //메뉴 구성
        System.out.println("menu");
        System.out.println("===================================================");
        System.out.println("1. info input ");
        System.out.println("2. out cash ");
        System.out.println("3. put cash ");
        System.out.println("4. search");
        System.out.println("5.view all info");
        System.out.println("6. clear");
        System.out.println("===================================================");


        Scanner inputMenu = new Scanner(System.in);
        menu = inputMenu.nextInt();
        switch (menu) {
            case 1 :
                while(true){
                    try{
                        System.out.println("If you want exit input 'exit' in name space");
                        Scanner scn = new Scanner(System.in);
                        System.out.println("input name");
                        String name = scn.nextLine();
                        if(name.equals("exit")) throw new Exception();
                        System.out.println("input account");
                        String account = scn.nextLine();
                        System.out.println("input cash");
                        int cash = scn.nextInt();
                        c = new customerInfo(name, account, cash);
                        m.add(c);
                    }catch (Exception e){
                        System.out.println("stop add info");
                        break;
                    }
                }
            case 2 :
                m.get(0).outCash();
                break;
            case 3 :
                m.get(0).putCash();
                break;
            case 4:
                System.out.println("input search name or account");
                Scanner input = new Scanner(System.in);
                String info = input.nextLine();
                for(int idx=0; idx < m.size(); idx++){
                    if(m.get(idx).contains(info)){
                        System.out.println("success");
                        System.out.println("name : " +m.get(idx).name+" account : "+m.get(idx).account+" cash : "+m.get(idx).cash);
                        break;
                    }else System.out.println("fail");
                    break;

        }
            case 5:
                for(int idx = 0; idx< m.size(); idx++){
                    System.out.println(m.get(idx));
                }
                break;
            case 6:
                try {
                    new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
                    break;
                }catch (IOException | InterruptedException e){
                    e.printStackTrace();
                }
            default: break;
        }
    }

}

'Program > JAVA' 카테고리의 다른 글

JDBC, 쿼리문(Query)  (0) 2022.12.25
Hash Map, 파일 관리  (0) 2022.12.25
플러시(Flush)  (0) 2022.12.25
Score Project, Memberinfo_Project, ArrayList, 은행 입출금 프로젝트  (0) 2022.08.28
JDK,JRE,JAVAC, 출력문, 형변환, IF, FOR  (0) 2022.08.27