黑马程序员技术交流社区

标题: 【黑马云青年 胡浩】关于一个处理异常输入的问题 [打印本页]

作者: 胡浩    时间: 2013-5-24 20:39
标题: 【黑马云青年 胡浩】关于一个处理异常输入的问题
本帖最后由 胡浩 于 2013-5-24 21:26 编辑
  1. <hr class="l">package itheima;
  2. import java.util.*;
  3. public class test6 {

  4.         /**
  5.          * 输入一个数字组成的数组,输出该数组的最大值和最小值
  6.          */
  7.         public static void main(String[] args) {
  8.                 int [] array=new int [5];
  9.                 Scanner input=new Scanner(System.in);
  10.                
  11.                 for(int i=0;i<array.length;i++){
  12.                         System.out.println("请输入第"+(i+1)+"个数:");
  13.                         
  14.                         try {
  15.                                 int num=input.nextInt();
  16.                                 
  17.                                 array[i]=num;
  18.                                 
  19.                         } catch (Exception e) {
  20.                                 System.out.println("请输入数字");
  21.                                 
  22.                         }        
  23.                 }
  24.                 int max=array[0];
  25.                 int min=array[0];
  26.                
  27.                 for(int i=1;i<array.length;i++){
  28.                         if(array[i]>array[i-1]){
  29.                                 max=array[i];
  30.                         }
  31.                         if(array[i]<array[i-1]){
  32.                                 min=array[i];
  33.                         }
  34.                 }
  35.                 System.out.println("最大值是"+max);
  36.                 System.out.println("最小值是"+min);
  37.         }

  38. }
复制代码

当我输入一个字母A 是,它输出的是请输入数字,请输入第一个数,没有在接收我的输入,请复制到eclipse中帮我看看,谢谢!!!


作者: 胡浩    时间: 2013-5-24 20:58
尹桥印 发表于 2013-5-24 20:43
int num=input.nextInt();

你输入A的话,调用nextInt();这个方法是否有异常,你检查一下。

是有异常的。打印结果是
请输入第1个数:
A
请输入数字
请输入第2个数:
请输入数字
请输入第3个数:
请输入数字
请输入第4个数:
请输入数字
请输入第5个数:
请输入数字
最大值是0
最小值是0

作者: 胡浩    时间: 2013-5-24 21:25
尹桥印 发表于 2013-5-24 20:43
int num=input.nextInt();

你输入A的话,调用nextInt();这个方法是否有异常,你检查一下。

谢了,说的是。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2