新手请教关于带参数输入的问题
public class test
{
/**编写一个程序,检查字符串是否为合法的Java标识符。
*/
public static void main(String args[])
{
//获取命令行
String str = new String(args[0]);
//判断命令行输入
if(str.length()>=1)
System.out.println("输入的字符串为:"+str);
else
System.out.println("错误,没有输入!");
//判断是否是有效的标识符
for(int i=0;i<str.length();i++)
{
if(Character.isJavaIdentifierPart(str.charAt(i))|Character.isJavaIdentifierPart(str.charAt(i)))
System.out.println(str.charAt(i)+"是合法的标识符!");
else
System.out.println(str.charAt(i)+"是非法的标识符!");
}
}
}
刚刚开始学习java,如果高手们觉得问题幼稚请不要见笑,谢谢
代码能够编译通过,但是有个问题,如果输入java test则就会报错,轮不到我去判断,java test后面有字符串倒好像是正常的,请不吝赐教.
------解决方案--------------------
Exception in thread "main"
java.lang.ArrayIndexOutOfBoundsException: 0 at Test.main(Test.java:8)
数组越界的问题 因为你没有传参的时候 数组是空的这时候你去取第一个值 当然会报错。你首先判断一个args 的length是不是0 就好了