4

我已经用java编译了一些小程序,一切都很好。但是我的新代码有任何问题。

class myclass
{
 public static void main (String[] args)
 {
  int x, y;
  String s ="sssss";
  x=args.length;
  s= args[0].substring(1,2);
  System.out.println("Num of args: "+x);
  System.out.println("List of args:");
  y = parseInt(s,5);
  }
}

编译器说:

 e:\java\4>javac myclass.java 
  myclass.java:11: error: cannot find symbol   
   y = parseInt(s,5);
       ^   symbol:   method parseInt(String,int)   location: class myclass 1 error

 e:\java\4>

奇怪的是编译器跳过了方法子字符串(因为没有问题)但是方法 parseInt 似乎有任何问题。y = parseInt(s); 或: y = parseInt("Hello"); --> 也是同样的编译信息。

还是该方法不存在?docs.oracle-->整数表示它存在:)

这让我真的很疯狂,因为我不知道如何搜索错误。我已经检查了互联网,我检查了类路径和路径......

因此,如果任何专家可以帮助我,那就太好了。:)

4

3 回答 3

5

parseIntInteger中的静态方法你需要这样称呼它:

  y = Integer.parseInt(s,5);
于 2012-11-17T23:08:32.887 回答
1

您正在尝试访问Integer该类的静态方法

你必须这样做:

y = Integer.parseInt(s,5);
于 2012-11-17T23:08:40.403 回答
0

parseInt是 Integer 类的静态方法。要调用它,您必须执行以下操作之一:

  • 在 Integer 类上调用它

    Integer.parseInt(s, 5)
    
  • 在整数引用上调用它

    Integer i = null;//yes reference can be even null in this case
    i.parseInt(s, 5);
    
  • 或避免前两个选项使用静态导入(如import static java.lang.Integer.parseInt;. 这样您就可以使用该方法,例如

    y = parseInt(s,5);
    
于 2012-11-17T23:16:45.967 回答