상세 컨텐츠

본문 제목

2023-10-19 TIL

Java TIL

by 개발일지작성 2023. 10. 20. 13:31

본문

728x90

목표 : Kiosk 완성

힘들었던 점

(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)

  1. 선택한 상품 목록을 주문하기 화면에 도출하기
  2. 선택한 상품 가격의 합 도출하기

해결방법

  1. 부모 클래스에 비어있는 동적배열 생성
    • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
    • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
    • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
    • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.

내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.

TIP) Arraylist 사용방법

  1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
    • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
    • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)

    • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.

    • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
    • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?

    • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.

    • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
    넣어놓은 숫자(Double) 배열 더하기
    • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
    나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
    1. 선택한 상품 목록을 주문하기 화면에 도출하기
    2. 선택한 상품 가격의 합 도출하기
    해결방법
    1. 부모 클래스에 비어있는 동적배열 생성
      • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
      • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
      • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
      • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.

    1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
      • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
      • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)

      • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
      • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
      • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
      • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
      • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
      넣어놓은 숫자(Double) 배열 더하기
      • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
      나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
      1. 선택한 상품 목록을 주문하기 화면에 도출하기
      2. 선택한 상품 가격의 합 도출하기
      해결방법
      1. 부모 클래스에 비어있는 동적배열 생성
        • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
        • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
        • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
        • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
      1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
        • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
        • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
        • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
        • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
        • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
        • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
        • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
        넣어놓은 숫자(Double) 배열 더하기
        • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
        나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
        1. 선택한 상품 목록을 주문하기 화면에 도출하기
        2. 선택한 상품 가격의 합 도출하기
        해결방법
        1. 부모 클래스에 비어있는 동적배열 생성
          • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
          • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
          • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
          • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
        1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
          • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
          • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
          • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
          • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
          • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
          • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
          • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
          넣어놓은 숫자(Double) 배열 더하기
          • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
          나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
          1. 선택한 상품 목록을 주문하기 화면에 도출하기
          2. 선택한 상품 가격의 합 도출하기
          해결방법
          1. 부모 클래스에 비어있는 동적배열 생성
            • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
            • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
            • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
            • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
          1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
            • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
            • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
            • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
            • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
            • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
            • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
            • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
            넣어놓은 숫자(Double) 배열 더하기
            • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
            나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
            1. 선택한 상품 목록을 주문하기 화면에 도출하기
            2. 선택한 상품 가격의 합 도출하기
            해결방법
            1. 부모 클래스에 비어있는 동적배열 생성
              • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
              • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
              • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
              • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
            1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
              • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
              • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
              • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
              • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
              • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
              • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
              • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
              넣어놓은 숫자(Double) 배열 더하기
              • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
              나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
              1. 선택한 상품 목록을 주문하기 화면에 도출하기
              2. 선택한 상품 가격의 합 도출하기
              해결방법
              1. 부모 클래스에 비어있는 동적배열 생성
                • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
                • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
                • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
                • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
              1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
                • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
                • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
                • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
                • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
                • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
                • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
                • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
                넣어놓은 숫자(Double) 배열 더하기
                • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
                나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
                1. 선택한 상품 목록을 주문하기 화면에 도출하기
                2. 선택한 상품 가격의 합 도출하기
                해결방법
                1. 부모 클래스에 비어있는 동적배열 생성
                  • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
                  • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
                  • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
                  • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
                1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
                  • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
                  • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
                  • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
                  • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
                  • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
                  • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
                  • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
                  넣어놓은 숫자(Double) 배열 더하기
                  • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
                  나머지는 보면 딱 알듯 ㅎㅎ목표 : Kiosk 완성(전부 힘들고 인터넷에서 찾아가며 했지만 가장 어려웠던 것만 작성하기로..)
                  1. 선택한 상품 목록을 주문하기 화면에 도출하기
                  2. 선택한 상품 가격의 합 도출하기
                  해결방법
                  1. 부모 클래스에 비어있는 동적배열 생성
                    • 배열의 크기를 알 수 없을 시 무한정 늘릴 수 있는 LIst 동적배열을 사용한다
                    • 배열의 크기가 정해져 있고 수정할 일이 크게 없다면 Arraylist 정적배열을 사용하자
                    • 동적배열은 수정/삽입이 편한 대신 메모리를 많이 사용하여 조회가 느리다.
                    • 정적배열은 수정/삽입이 불편한 대신 조회가 빠르다.
                  1. if에서 sc.nextInt 로 상품 선택시 부모 클래스에서 만들어 놓은 배열을 가져왔다.
                    • 문제는 저기서 원하는 인덱스를 가져와서 어디 한 곳에 저장해 놓는 것이었는데
                    • 손님이 1~5번 메뉴 중 선택한 숫자에서 -1 을 하여 가져오는 것이었다 (인덱스는 0부터 시작이니까)
                    • 위 처럼 저장하고 선택한 상품을 재확인 하는 클래스로 이동시켰다.
                    • 변수(?) 이름 옆에 자료형과 변수 명을 넣으면 사용이 가능하다는 것도 처음 알았다.
                    • 다만 String 과 Double 이 전부 저 이름을 사용되는 것인가..?
                    • 이름을 정하고 부모 클래스를 수정하는 super 를 사용하여 부모 클래스에 있는 비어있는 배열을 호출 → .add(변수명) 을 사용해서 비어있던 배열을 채워주었다.
                    • 그 후 주문화면에서 Systemln 으로 super.choiceMenu 를 사용하니
                    넣어놓은 숫자(Double) 배열 더하기
                    • 배열 모으는 방법은 위 와 동일 super.(배열변수명).strem().reduce(0D, Double::sum);으로 더한다!
                    나머지는 보면 딱 알듯 ㅎㅎ
                  2. 설정한 숫자도 배열에 함께 더한다.
                  3. identity = 초기값
                  4. 해결방법
                  5. 어려웠던 점 2번째
                  6. 결과 값 도출!
                2. TIP) Arraylist 사용방법
                3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
                4. 힘들었던 점
                5. 설정한 숫자도 배열에 함께 더한다.
                6. identity = 초기값
                7. 해결방법
                8. 어려웠던 점 2번째
                9. 결과 값 도출!
              2. TIP) Arraylist 사용방법
              3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
              4. 힘들었던 점
              5. 설정한 숫자도 배열에 함께 더한다.
              6. identity = 초기값
              7. 해결방법
              8. 어려웠던 점 2번째
              9. 결과 값 도출!
            2. TIP) Arraylist 사용방법
            3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
            4. 힘들었던 점
            5. 설정한 숫자도 배열에 함께 더한다.
            6. identity = 초기값
            7. 해결방법
            8. 어려웠던 점 2번째
            9. 결과 값 도출!
          2. TIP) Arraylist 사용방법
          3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
          4. 힘들었던 점
          5. 설정한 숫자도 배열에 함께 더한다.
          6. identity = 초기값
          7. 해결방법
          8. 어려웠던 점 2번째
          9. 결과 값 도출!
        2. TIP) Arraylist 사용방법
        3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
        4. 힘들었던 점
        5. 설정한 숫자도 배열에 함께 더한다.
        6. identity = 초기값
        7. 해결방법
        8. 어려웠던 점 2번째
        9. 결과 값 도출!
      2. TIP) Arraylist 사용방법
      3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
      4. 힘들었던 점
      5. 설정한 숫자도 배열에 함께 더한다.
      6. identity = 초기값
      7. 해결방법
      8. 어려웠던 점 2번째
      9. 결과 값 도출!
    2. TIP) Arraylist 사용방법
    3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
    4. 힘들었던 점
    5. 설정한 숫자도 배열에 함께 더한다.
    6. identity = 초기값
    7. 해결방법
    8. 어려웠던 점 2번째
    9. 결과 값 도출!
  2. TIP) Arraylist 사용방법
  3. 내가 메뉴가 정해져 있지만 List를 사용한 이유는 개인과제이기에 여기서 끝이지만 실제로 사용된다면 메뉴 추가가 있을 시 수정하기 편하도록 List를 사용하였다.
  4. 힘들었던 점
  5. 설정한 숫자도 배열에 함께 더한다.
  6. identity = 초기값
  7. 해결방법
  8. 어려웠던 점 2번째
  9. 결과 값 도출!

'Java TIL' 카테고리의 다른 글

다형성이란?  (0) 2023.11.08
필드, 메소드, 매개변수  (0) 2023.11.07
키오스크 다시한번  (0) 2023.10.29
2023-10-23 간단한 게시판 만들기  (1) 2023.10.23
2023-10-20 TIJava 인터페이스  (0) 2023.10.20

관련글 더보기