在java中使用try和catch查找元素数组

时间:2018-04-30 14:23:24

标签: java arrays exception

所以,我有两个阵列,第一个是人名,第二个是年龄。然后,我在输出中创建了一个id,这样我就可以找到我要打印的id。

例如:

ID姓名年龄

1 Lucas 15

2 Vulnere 16

但是,我想使用try和catch来阻止用户找到数组外的id。

import java.util.Scanner;

Scanner input = new Scanner(System.in);
String[] name = {"Lucas","Vulnere"};
int[] age = {15, 16};
String answer = "";
System.out.println("ID\tNames\tAges");
for(i=0; i < age.length; i++)
{
System.out.println((i+1) +"\t"+name[i]+"\t"+age[i]);
}

do {
try {

System.out.println("Find people by id");
int id = input.nextInt();
}

catch(//WhatExceptionShouldIUse){
System.out.println("Id not found");
}

System.out.println("Result : ");
System.out.println("id : "+id);
System.out.println("Name : "+name[id-1]);
System.out.println("Age : "+age[id-1]);

System.out.println("Want to try to find it again? Y/N");
answer = input.next();
}while(answer.equalsIgnoreCase("Y"));

2 个答案:

答案 0 :(得分:2)

你可以这样做:

try {
    ...
} catch (ArrayIndexOutOfBounds ex) {
    ...
}

答案 1 :(得分:0)

你可以通过尝试环绕这样:

尝试{

做事......

} catch(Exeption e){   做东西.. }

为什么不使用List和包含函数?