2014-01-15 226 views
-3

我不知道如何從Java控制檯讀取數據。 如果可能的話,我想用掃描儀來做。 這是我在學習Java時嘗試的。Java:從控制檯讀取

package Scanners; 

import java.util.Scanner; 

public class ConsoleScanner { 


    static Scanner input = new Scanner(System.in); 

    public static void main(String[] args){ 

     if(input.equals("Hello")) 
      System.out.println("You typed in: Hello "); 
     if(input.equals("Good Bye")) 
      System.out.println("You typed in: Good Bye"); 
     else{ 
      System.out.println("You typed in: " + input); 
     } 


    } 

} 

它給我的這個錯誤:

You typed in: java.util.Scanner[delimiters=\p{javaWhitespace}+][position=0][match valid=false][need input=false][source closed=false][skipped=false][group separator=.][decimal separator=\,][positive prefix=][negative prefix=\Q-\E][positive suffix=][negative suffix=][NaN string=\Q?\E][infinity string=\Q?\E]

如果有更好的辦法從控制檯讀取,那麼請張貼。 - 謝謝

+0

請閱讀關於IO的教程,[this one](http://docs.oracle.com/javase/tutorial/essential/io/)。 –

+0

另外,這不是一個錯誤。 –

+0

'掃描儀#nextLine()'..例如:'String s = input.nextLine()' – nachokk

回答

0

您不想打印掃描儀本身。你想調用各種掃描儀功能來獲得輸入。看看Scanner APIScanner tutorial(這是第一個和第二個搜索結果「Java掃描儀」)的更多信息。

0

試試這個:

package Scanners;

import java.util.Scanner;

public class ConsoleScanner {

static Scanner scanner = new Scanner(System.in); //Creates the scanner 

public static void main(String[] args){ 

    String input = scanner.NextLine(); //Sets the string input equal to whatever the user types next 

    if(input.equals("Hello")) 
     System.out.println("You typed in: Hello "); 
    if(input.equals("Good Bye")) 
     System.out.println("You typed in: Good Bye"); 
    else{ 
     System.out.println("You typed in: " + input); 
    } 


} 

}

-1
import java.util.Scanner; 
class ScannerDemo{ 
public static void main(String args[]){ 

    Scanner sc=new Scanner(System.in); 

    System.out.println("Enter your age"); 
    int age=sc.nextInt(); 

    System.out.println("age:"+age); 

} 
} 
0

我的朋友,你必須使用

Scanner scanner= new Scanner(System.in); 
    input = scanner.next(); 

該方法找到並返回來自此掃描器的下一個完整標記。完整的令牌前後有與分隔符模式匹配的輸入。

+0

@ Nicken99,這是適合你的 – Tenacious

+0

@ Nicken99,我的朋友如果這適用於請右鍵點擊答案,所以它將有助於他人 – Tenacious