2015-10-16 65 views
0

無法弄清楚如何解決。我對Java非常陌生。錯誤:字符串無法解析爲變量

import java.util.Scanner; 

public class Greetings { 
    public static void main(String[] args) { 
     System.out.println("Hello there, what is your name? "); 
     Scanner input = new Scanner(System.in); 
     String = input.nextLine(); 
     System.out.println("Well then, welcome to Java" + input); 
    } 
} 
+1

請在此行聲明變量,String = input.nextLine();因爲你需要存儲一個字符串類型的變量。 String s = input.nextLine(); – Kogile

+0

@Unheilig請避免添加不相關的標籤,謝謝。 – Tom

回答

0

您從未實際定義過String變量,這就是編譯器抱怨的原因。使用下面的代碼獲得最大結果:

public class Greetings { 
    public static void main(String[] args) { 
     System.out.println("Hello there, what is your name? "); 
     Scanner input = new Scanner(System.in); 
     String theInput = input.nextLine(); 
     System.out.println("Well then, welcome to Java" + theInput); 
     if (input != null) { 
      input.close(); // close the Scanner once finished with it 
     } 
    } 
} 
+0

現在我得到這個錯誤與您的更改: 1警告發現: [line:11] 警告:資源泄漏:'輸入'永遠不會關閉 – Sean

+0

如果(input!= null){input.close(); }到主要方法的結尾。理想情況下,你可以在最後一個塊中處理這個問題,但在這個階段我認爲你不需要爲這些問題煩惱。 –

+0

這是我的榮幸(和義務)來幫助你。 –

0

您沒有在第二個系統輸出之前放置字符串(變量的名稱)的名稱。

0

token String引用java.lang包中的對象類型String。 您需要爲java提供一個變量名稱,以便它可以知道在哪裏從內存中獲取該特定對象,如果您稍後請求它。你已經使用了正確的語法,用於創建掃描對象,只是它應用到String對象:

String nextLine = input.nextLine(); 

和引用該對象時:

System.out.println("Well then, welcome to Java" + nextLine); 
+0

與此和類似的變化我現在得到這個錯誤:1警告找到:[line:11]警告:資源泄漏:'輸入'是從來沒有關閉 – Sean

+0

請參閱我對Tim的回答的評論。 –

0

請在此行中,字符串變量聲明= input.nextLine();因爲你需要存儲一個字符串類型的變量。 String s = input.nextLine();