当前位置: 代码迷 >> Java相关 >> 刚写的,不知道哪里错了
  详细解决方案

刚写的,不知道哪里错了

热度:158   发布时间:2007-07-05 22:29:06.0
刚写的,不知道哪里错了

class Test
{
public static void main(String[] args)
{
String str=args[];
if(Character.isJavaIdentifierStart(str.charAt(0)))
{
for(int i=1;i<str.length();i++)
{
if(str[i]=='$'||str[i]=='_')
{
System.out.println("是合法标识符");
}
else
{
System.out.println("不是合法标识符");
}
}
}
else
{
System.out.println("不是合法标识符");
}
}
}

Test.java:5:需要".class"
String str=args[];

搜索更多相关的解决方案: 标识  public  

----------------解决方案--------------------------------------------------------
如果你直接用args[]作为存储字符串的数组的话,在运行时要这样运行:java.文件名+你要输入的字符串
----------------解决方案--------------------------------------------------------
现在是编译就没法通过
----------------解决方案--------------------------------------------------------

class Test
{
public static void main(String[] args)
{
String[] str=args;
if(Character.isJavaIdentifierStart(str.charAt(0))) 有这样用的吗?
{
for(int i=1;i<str.length;i++)
{
if(str[i]=='$'||str[i]=='_') //比较有equals.
{
System.out.println("是合法标识符");
}
else
{
System.out.println("不是合法标识符");
}
}
}
else
{
System.out.println("不是合法标识符");
}
}
}


----------------解决方案--------------------------------------------------------

if(str[i]=='$'||str[i]=='_')

这里用==不对吗?


----------------解决方案--------------------------------------------------------
一个是字符串,一个是字符怎么相等?
还是用equals吧

[此贴子已经被作者于2007-7-6 12:18:29编辑过]


----------------解决方案--------------------------------------------------------

改成我这样可以
class Test1
{
public static void main(String[] args)
{
String str="";
for(int i=0;i<args.length;i++)
str+=args[i];
if(Character.isJavaIdentifierStart(str.charAt(0)))
{
for(int i=1;i<str.length();i++)
{
if(str.charAt(i)=='$'||str.charAt(i)=='_')
{
System.out.println("是合法标识符");
}
else
{
System.out.println("不是合法标识符");
}
}
}
else
{
System.out.println("不是合法标识符");
}
}
}


----------------解决方案--------------------------------------------------------
  相关解决方案