2012-11-17 86 views
2

我已經編寫了java中的一些小程序,一切都很好。但我的新代碼有任何問題。找不到符號:parseInt

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); OR:y = parseInt(「Hello」); - >也是相同的編譯信息。

或者該方法不存在? docs.oracle-->Integer說它存在:)

這讓我非常瘋狂,因爲我不知道如何搜索錯誤。我已經檢查了互聯網allready,我檢查了類路徑和路徑...

所以這將是偉大的,如果任何專家可以幫助我。 :)

+0

Java的的Integer.parseInt有一個可選的基數參數。但要確保你想要一個基數5.如果你想解析「常規」數字輸入,你可以完全省略基數。 – Logard

回答

4

parseInt是一個靜態方法在整數類。你需要調用它像這樣:

y = Integer.parseInt(s,5); 
+0

感謝您的快速回復,我想我一個人在今年年底之前沒有得到它。 – user1832679

1

您正在試圖訪問Integer

的靜態方法你必須做到:

y = Integer.parseInt(s,5); 
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);