16-2. (예외 처리) try catch를 사용하여 예외 처리하기

박은서's avatar
Dec 17, 2025
16-2. (예외 처리) try catch를 사용하여 예외 처리하기

1. 문제

  • ExamTry 클래스를 만드세요
  • 사용자로 부터 숫자를 입력받고, examTry.searchArr(index)를 반드시 실행하세요.
  • 실행 중 그 숫자의 범위가 0~2가 아니어서 예외가 발생하면 0~2까지 입력가능하다고 출력해주세요.
  • 그리고 다시 while문을 돌면 됩니다.
package ex08.ch02; import java.util.Scanner; public class ExamTry { int[] arr; public ExamTry() { this.arr = new int[3]; arr[0] = 5; arr[1] = 6; arr[2] = 7; } void searchArr(int index){ System.out.println("찾으시는 배열 공간의 값은 : "+arr[index]); } // 문제 : 잘못된 인덱스 번호를 넣으면 "[0~2]까지 입력가능합니다"라고 출력해주세요!! // try catch를 사용하여 예외를 처리하기 public static void main(String[] args) { ExamTry examTry = new ExamTry(); Scanner sc = new Scanner(System.in); System.out.println("찾고 싶은 배열의 index를 입력하세요"); while (true){ int index = sc.nextInt(); // try 코드를 여기에 작성하세요. examTry.searchArr(index); } } }

2. 풀이

package ex08.ch02; import java.util.Scanner; public class ExamTry { int[] arr; public ExamTry() { this.arr = new int[3]; arr[0] = 5; arr[1] = 6; arr[2] = 7; } void searchArr(int index) { System.out.println("찾으시는 배열 공간의 값은 : " + arr[index]); } // 문제 : 잘못된 인덱스 번호를 넣으면 "[0~2]까지 입력가능합니다"라고 출력해주세요!! // try catch를 사용하여 예외를 처리하기 public static void main(String[] args) { ExamTry examTry = new ExamTry(); Scanner sc = new Scanner(System.in); System.out.println("찾고 싶은 배열의 index를 입력하세요"); while (true) { int index = sc.nextInt(); // try 코드를 여기에 작성하세요. try { examTry.searchArr(index); } catch (Exception e) { System.out.println("0부터 2까지 입력 가능합니다."); continue; } } } }
notion image

3. 정답

package ex08.ch02; import java.util.Scanner; public class ExamTry { int[] arr; public ExamTry() { this.arr = new int[3]; arr[0] = 5; arr[1] = 6; arr[2] = 7; } void searchArr(int index) { System.out.println("찾으시는 배열 공간의 값은 : " + arr[index]); } // 문제 : 잘못된 인덱스 번호를 넣으면 "[0~2]까지 입력가능합니다"라고 출력해주세요!! // try catch를 사용하여 예외를 처리하기 public static void main(String[] args) { ExamTry examTry = new ExamTry(); Scanner sc = new Scanner(System.in); System.out.println("찾고 싶은 배열의 index를 입력하세요"); while (true) { int index = sc.nextInt(); // try 코드를 여기에 작성하세요. try { examTry.searchArr(index); } catch (RuntimeException e) { System.out.println("[0-2]까지 수를 입력해주세요."); } } } }
notion image
try/catch는 모든 예외적인 상황 생각해보고 확인해보고 catch를 넣어야 함. 노가다..
Share article