| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1131 人关注过本帖
标题:急!!请教高手!!!
只看楼主 加入收藏
当家的女人
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-2
收藏
 问题点数:0 回复次数:11 
急!!请教高手!!!
int ss=Integer.parseInt(args[0]);
运行后有错误提示:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at eight.MyTime4.main(MyTime4.java:21)



代码附上:



public class Time3 {

    private int hour;
    private int minute;
    private int second;
    public Time3()
    {setTime3(0,0,0);}
    public Time3(int hh)
    {setTime3(hh,0,0);}
    public Time3(int hh,int mm)
    {setTime3(hh,mm,0);}
    public Time3(int hh,int mm,int ss)
    {setTime3(hh,mm,ss);}
    public void setTime3(int hh,int mm,int ss)
    {setHour(hh);setMinute(mm);setSecond(ss);}
    public void setHour(int hh)
    {hour=((hh>=0&&hh<24)?hh:0);}
    public void setMinute(int mm)
    {minute=((mm>=0&&mm<60)?mm:0);}
    public void setSecond(int ss)
    {second=((ss>=0&&ss<60)?ss:0);}
    public int gethour()
    {return hour;}
    public int getminute()
    {return minute;}
    public int getsecond()
    {return second;}
    public String toString()
    {
        return(hour+":"+(minute<10?"0":"")+minute+":"+(second<10?"0":"")+second);
    }
}


public class MyTime4 {

    private static Time3 t3;
    public static void addSecond(int ss)
    {
        int sq=(t3.getsecond()+ss)/60;
        int sr=(t3.getsecond()+ss)%60;
        t3.setSecond(sr);
        int mq=(t3.getminute()+sq)/60;
        int mr=(t3.getminute()+sq)%60;
        t3.setMinute(mr);
        int hq=(t3.gethour()+mq)%24;
        t3.setHour(hq);
    }
    public static void main(String args[])
    {
        t3=new Time3(3,33,33);
        System.out.println("设置时间t3="+t3.toString());
        int ss=Integer.parseInt(args[0]);
        addSecond(ss);
        System.out.println("修改后时间t3="+t3.toString());
    }
}

[[it] 本帖最后由 当家的女人 于 2008-8-2 22:03 编辑 [/it]]
搜索更多相关主题的帖子: private thread public 
2008-08-02 21:49
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
ArrayIndexOutOfBoundsException
数组下标越界.
你用到args[0]了没有?
2008-08-02 23:26
当家的女人
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-2
收藏
得分:0 
int ss=Integer.parseInt(args[0]);
2008-08-03 09:56
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
[bo][un]当家的女人[/un] 在 2008-8-3 09:56 的发言:[/bo]

int ss=Integer.parseInt(args[0]);

那你传了什么参数进去?
2008-08-03 11:20
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
args[0]在没有传参数进去的时候是会ArrayIndexOut的
2008-08-03 11:24
当家的女人
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-2
收藏
得分:0 
可以麻烦你帮我运行下我的程序,看是否会出错吗?谢谢了!
2008-08-07 15:37
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
java 你的程序 你的参数

当你不传参数的时候,args[]的大小就是0了,那当然出问题了

可惜不是你,陪我到最后
2008-08-07 15:39
当家的女人
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-2
收藏
得分:0 
参数怎么传?
2008-08-07 15:58
anaranjado
Rank: 1
来 自:法兰西
等 级:新手上路
威 望:1
帖 子:24
专家分:0
注 册:2008-8-5
收藏
得分:0 
args数组是指LZ你启动你的main的时候,传递给main的参数。例如你的程序叫做app.class,那你启动程序的时候在命令行模式下输入:

java app【回车】

这种情况下args就是个空数组,args.length()返回为0。

但是如果你启动程序的时候输入:

java app hello world【回车】

那args的程度就为2,其中args[0]为hello,args[1]为world。
2008-08-07 16:57
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
LS正解
2008-08-11 00:37
快速回复:急!!请教高手!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012708 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved