//文件名:CommandArgs.java
package book.basic;public class CommandArgs
{  
public static void error1(String errmsg)
{
System.err.println(errmsg);
System.exit(1);
}
public static void main(String[] args)
{
String usageMsg="Usage: CommandArgs[options]\n"
+"Where [options] are:\n"
+"-help                      显示帮助信息\n"
+"-n<name>              设置参数的名字\n"
+"-v<value>               设置参数的值\n";
String name=null;
String value=null;
}
for (int i=0;i<args.length;i++)  //这里报错
{
if(args[i].equals("-n"))
{
if((i+1)==args.length)
{
error1 ("Error: -n requires an argument.");
}
name=args[++i];
}
else if(args[i].equals("-v"))
{
if((i+1)==args.length)
{
error1("Error: -v requires an argument.");
}
  value=args[++i];
}
else if (args[i].equalsIgnoreCase("-help"))
{
System.out.println(usageMsg);
System.exit(0);
}
else
{
error1("Error: argument not recognzied:"+args[i]);

}
System.out.println("name: "+name+"; value:"+value);
}
}
错误信息:
CommandArgs.java:21: 非法的类型开始
for (int i=0;i<args.length;i++)
        ^
CommandArgs.java:51: 需要 <标识符>
}
^
2 错误我想问一下,不能直接定义 i 并赋值吗?这到底是什么问题,太奇怪了。

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【JAVA_mentu】截止到2008-07-16 23:27:38的历史汇总数据(不包括此帖):
    发帖的总数量:7                        发帖的总分数:130                      每贴平均分数:18                       
    回帖的总数量:29                       得分贴总数量:10                       回帖的得分率:34%                      
    结贴的总数量:7                        结贴的总分数:130                      
    无满意结贴数:1                        无满意结贴分:20                       
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:14.29 %               无满意结分率:15.38 %                  
    敬礼!
      

  2.   


     }
        for (int i=0;i<args.length;i++)  //这里报错看for上面那个花括号,循环定义到方法外面去了,当然不让你定义了.仔细看看到底那个括号是哪里的.
      

  3.   

    public class CommandArgs
    {  
        public static void error1(String errmsg)
        {
            System.err.println(errmsg);
            System.exit(1);
        }
        public static void main(String[] args)
        {
            String usageMsg="Usage: CommandArgs[options]\n"
            +"Where [options] are:\n"
            +"-help                      显示帮助信息\n"
            +"-n<name>              设置参数的名字\n"
            +"-v<value>               设置参数的值\n";
            String name=null;
            String value=null;
        
        for(int i=0;i<args.length;i++)  //这里报错
        {
            if(args[i].equals("-n"))
        {
            if((i+1)==args.length)
            {
                error1 ("Error: -n requires an argument.");
                }
                name=args[++i];
            }
            else if(args[i].equals("-v"))
            {
                if((i+1)==args.length)
                {
                    error1("Error: -v requires an argument.");
                }
                  value=args[++i];
                }
                else if (args[i].equalsIgnoreCase("-help"))
                {
                    System.out.println(usageMsg);
                    System.exit(0);
                }
                else
                {
                    error1("Error: argument not recognzied:"+args[i]);
                    
                }
                System.out.println("name: "+name+"; value:"+value);
    }
        }
    }改好了