站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题我编写了一个弱智级小程序.请前辈们帮我看一下!

我编写了一个弱智级小程序.请前辈们帮我看一下!

摘要: 我编写了一个弱智级小程序.请前辈们帮我看一下!


class ForPrint
{
/*
*
*
*
*/
public static void print(int x,int y) throws XyException
{
if(x<=0||y<=0)
throw new XyException("x or y <=0");
for(int i=0;i {
for(int j=0;j {
System.out.print("* ");
//System.out.println();
}
System.out.println();
}
}
public static void main(String [] args)
{
int x=Integer.parseInt(args[0]);
int y=Integer.parseInt(args[1]);
try{
print(x,y);
    if(args.length!=2)
System.out.println("Use :java ForPrint 10 10");

}
catch(XyException e)
{
System.out.println(x);
System.out.println(y);
System.out.println(e.getMessage());
e.printStackTrace();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
finally
{
System.out.println("打印出"+x+"×"+y+"的*矩阵!");
}

}
}
class XyException extends Exception
{
public XyException(String msg)
{
super(msg);
}

}
我想让程序打印出M*N的*矩形.
检查输入参数是否为2!否刚输出Use :java ForPrint 10 10
现在我输入java ForPrint 5只提示我数组越界.并没有打印java ForPrint 10 10请前辈们帮我分析一下!!!


语句:int y=Integer.parseInt(args[1]); 要取得第二个参数的数据

但是你只提供了一个参数,这是参数数组的长度为1。

而你要取args[1]所以数组越界


一句话就是:你在程序中默认为参数数组的长度一定是2,但是当你只输入一个5作为参数时,这个时候参数数组的长度为1


程序必须2个参数,不能只输入一个


多谢了!学习中........


↑返回目录
前一篇: 关于java中GridBagLayout的问题
后一篇: xml如何通过xsl展现