java问题,再帮忙加个详细的注释
来源:百度知道 编辑:UC知道 时间:2024/06/02 03:15:57
验证程序,输入6个整数后会出现什么异常? 并对下列程序进行注释。
import java.io.*;
public class ExceptionClass1
{
public ExceptionClass1 ()
{
}
public static void main(String[] args)
{
int[] nArray = new int[5];
int n;
try
{
System.out.println("请输入6个整数,看看会发生什么?");
for (n =0;n<nArray.length+1;n++)
try
{
BufferedReader keyin=new BufferedReader(new InputStreamReader(System.in));
String str;
str=keyin.readLine( ); //用于从键盘读取一个字符串。
nArray[n]=Integer.parseInt(str);
}
catch(IOException e)
{
}
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println("发生错误,数组越界!");
}
}
}
import java.io.*;
public class ExceptionClass1
{
public ExceptionClass1 ()
{
}
public static void main(String[] args)
{
int[] nArray = new int[5];
int n;
try
{
System.out.println("请输入6个整数,看看会发生什么?");
for (n =0;n<nArray.length+1;n++)
try
{
BufferedReader keyin=new BufferedReader(new InputStreamReader(System.in));
String str;
str=keyin.readLine( ); //用于从键盘读取一个字符串。
nArray[n]=Integer.parseInt(str);
}
catch(IOException e)
{
}
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println("发生错误,数组越界!");
}
}
}
BufferedReader keyin=new BufferedReader(new InputStreamReader(System.in)); //把提取到的值赋给keyin
String str;
str=keyin.readLine( ); //用于从键盘读取一个字符串。 ---从输入的数据中读取一行
nArray[n]=Integer.parseInt(str); //,貌似这一句没有什么意义,数组中的值都是一样的,
异常:数组越界啊。
for (n =0;n<nArray.length+1;n++)
n<nArray.length+1 //n的最大值==nArray.length
那么nArray[n]=Integer.parseInt(str);就会报异常了。
不知道说的是不是你问的意思,有点看不懂你的意思