黑马程序员技术交流社区

标题: 程序小问题 [打印本页]

作者: 张学东    时间: 2012-10-20 12:35
标题: 程序小问题
运行下面一段程序:
  1. public class AssertionExample {
  2. public static void main(String[] args) {
  3.   int age=Integer.parseInt(args[0]);
  4.   System.out.println("您输入的数字:"+age);
  5.   
  6.   assert age>0: "输入年龄有误!";
  7.   
  8.   System.out.println("您的实际年龄是:"+age+"岁——祝您健康长寿!");
  9. }
  10. }
复制代码
后出现
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at AssertionExample.main(AssertionExample.java:4)
哪位朋友指点一下到底是哪里出问题了啊?  速度啊!!!!
作者: 齐连涛    时间: 2012-10-20 12:42
主函数参数是字符串数组,默认长度是0,你传入了一个字符串才有ags[0]  ,根据所报异常,数组角标越界,显然没有传入字符串。
作者: qhasilver    时间: 2012-10-20 12:43
程序没错,你忘记传参数了。如果是用命令行,你应该用 java AssertionExample 15
15表示你要输入的年龄
如果你用eclipse。右键,run as--run configuation--arguments-program arguments:输入你要输入的年龄--run
作者: 张学东    时间: 2012-10-20 12:44
lhkqlt 发表于 2012-10-20 12:42
主函数参数是字符串数组,默认长度是0,你传入了一个字符串才有ags[0]  ,根据所报异常,数组角标越界,显然 ...

谢谢提醒  thank you 了  呵呵




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