오늘 하루의 느낀점

230727 Today I Learned!

조예_ 2023. 7. 27. 22:54

프로젝트를 하던 중 

예외처리를 위해 try - catch를 사용 했다!

 

그런데... 

  • 1번 클래스에서 2번 클래스를 호출하기 위해선 readline = 1 또는 10이라는 값을 넣어줘야 한다
  • 1 또는 10 이외의 숫자가 나올 시 println("값을 잘못 입력하였습니다") 라는 결과가 나와야 함
  • null이나 문자열 입력 시 println("숫자만 입력할 수 있습니다")라고 결과가 나옴
  • 정답을 맞출때 까지 계속 루프 된다!

이런식이라면??

 

2번 클래스에서도 같은 예외처리를 해줘야한다면?!?!

 

 try {
      try {
          try {
          } catch () {
          }
      } catch () {
      }
    } catch () {
  }

 

이런코드가 계속 나오나..?!?!?!? 계속계속 중첩을 사용?!?! 어휴 정신없다ㅜㅜ

이렇게 쓰다보면 어디까지가 try지? catch이지? 하는데...!!!

 

이렇게 중복적으로 예외처리 할땐 

 

입력한 문자가 숫자인지 체크해주는 Boolean함수를 만들어 주면 된다!!!

 

 

while(true){
 val num = readLine()
if (num?.let { isNumericToX(it) } == true) {
2번클래스로 이동하는 코드 작성
break
}
}

 

자세한 내용은 밑에 사이트를 참고하면 된다!!!

문제 해결!

 

 

 

참고 사이트

https://www.baeldung.com/kotlin/check-if-string-is-numeric

 

Check if a String Is Numeric in Kotlin | Baeldung on Kotlin

A quick and practical guide to checking if String is numeric in Kotlin.

www.baeldung.com