본문 바로가기
TIL(Today I Learned)

TLI 16일 (23. 6. 5. 월)

by seed0335 2023. 6. 5.

1. 오늘의 문제(과제, 코딩테스트 등)

문제 : 더 좋은 기술적 해결책을 가지고 있는데, 어떻게 표현해야 팀이 받아들이고, 발전할 수 있을까? 고민하는 시간이었습니다. 기술적 문제보다는 소통의 문제의 중점!

 

A안 : input을 sc.nextLine()으로 받습니다. 문자로 받음 ▶ A안은 문자, 숫자 입력시오류가 없습니다.

B안 : input을 sc.nextInt()로 받습니다. 숫자로 받음 ▶ B안은 문자 입력시 아래 오류가 납니다. 

 

 * 오류 메시지

Exception in thread "main" java.util.InputMismatchException
	at java.base/java.util.Scanner.throwFor(Scanner.java:939)
	at java.base/java.util.Scanner.next(Scanner.java:1594)
	at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
	at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
	at src.B.main(B.java:8)

 * A안

import java.util.Scanner;

public class A {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();

        switch (input) {
            case "1":
                System.out.println(1);
                break;
            case "2":
                System.out.println(2);
                break;
            case "3":
                System.out.println(3);
                break;
            default:
                break;
        }
    }

 * B안

import java.util.Scanner;

public class B {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int input = sc.nextInt();
        
        switch (input) {
            case 1:
                System.out.println(1);
                break;
            case 2:
                System.out.println(2);
                break;
            case 3:
                System.out.println(3);
                break;
            default:
                break;
        }
    }
}

2. 시도 : 의견 교환을 나눴지만, 제 뜻을 제대로 전달하지 못했습니다. 

3. 해결 : 먼저 팀의 의견을 따르기로 했습니다. B안 후 try catch 사용 ▶ 그리고 이후에 더 깊이 있게 테스트를 보았고, 위에 해결책을 알게 되었습니다. 

 

4. 알게 된 것 :

정확히 배우고, 정리 후에 소통을 해야 겠습니다. 그래야 정확한 의사전달이 가능합니다. 

그리고, 팀의 의견을 존중하고, 들으려는 자세가 많이 필요하다고, 느꼈습니다.

확신이 없을 때는 정리해서 말하기.

 

배운 내용, 특히 중요한 부분

  1. 기술 외 부분(소통 등) : 소통은 어렵다. 의사전달은 분명하게 하기!
  2. 기술적인 부분 : 지난 주 만들었던 삭제 부분을 조금 발전시켰습니다. 
    public static void delete(MemoInput memoInput) {
        System.out.println("삭제");
        System.out.println("삭제할 게시글 번호를 입력해주세요.");

        // 스캐너 설정
        Scanner sc = new Scanner(System.in);
        String str0 = sc.nextLine();
        int boardNum = Integer.parseInt(str0); // 삭제 번호

        // 메모를 리스트로 변환
        List memoList = memoInput.getMemos();

        // 삭제할 번호를 받기
        for (int i = 0; i < memoList.size(); i++) {
            Memo memo = (Memo) memoList.get(i);
            if (memo.contentNumber == boardNum) {

                // 삭제할 비밀번호를 받기
                System.out.println("비밀번호를 입력해주세요.");
                int num1 = sc.nextInt();
                if (memo.passWord == num1) {
                    memoList.remove(i);
                    System.out.println("삭제되었습니다.");
                } else {
                    System.out.println("비밀번호가 틀립니다.");
                }
                print(memoInput);
            }
        }
        System.out.println("게시글이 존재하지 않습니다.");
        print(memoInput);
    }
  1. 오늘의 목표와 일정 및 점검
    1. 오늘의 목표 :  스프링 공부
    2. 목표를 위한 일정 :
      1. 09~13 : 팀과제 메모장 프로젝트
      2. 14~18 : 팀과제 메모장 프로젝트
      3. 19~21 : 학습법 특강
    3. 점검
      1. 목표 달성 : 스프링을 공부하고 싶었지만... 아쉽게도 오늘은 공부를 못했습니다. 
      2. 하루를 돌아보면서 느낌 : 개인적 기술 욕심을 부리고, 있는데, 옳은 것인가? 고민입니다. 

'TIL(Today I Learned)' 카테고리의 다른 글

TLI 18일 (23. 6. 7. 수)  (0) 2023.06.07
TLI 17일 (23. 6. 6. 화)  (0) 2023.06.07
TLI 15일 (23. 6. 2. 금)  (0) 2023.06.02
TLI 14일 (23. 6. 1. 목)  (0) 2023.06.01
TLI 13일(23.5.31 수)  (0) 2023.05.31

댓글