2015-09-26 63 views
1

我想寫一個接受用戶輸入的全名和他們的性別(m/f)的程序。打印用戶輸入的字符串變量需要Java幫助

import java.util.Scanner; 
public class CSCD210Lab2 { // class declaration 

public static void main(String[]args) { // main method 
    Scanner userInput = new Scanner(System.in); // scanner object for console input 
    System.out.print("Enter Your Full Name: "); 
    String fullName; 
    fullName = userInput.next(); 

    System.out.print = fullName; // print user input 
    } 
} 

目前,我只有輸入用戶名的代碼。我想確保fullName變量被存儲,所以我試圖讓控制檯打印任何用戶輸入的內容。但是,我收到System.out.print = fullName;上的語法錯誤。它給了我這個錯誤信息:

CSCD210Lab2.java:12: error: cannot find symbol 
     System.out.print = fullName; 
       ^
    symbol: variable print 
    location: variable out of type PrintStream 
    1 error 

我在做什麼錯在這裏?

回答

0

語法錯誤。 System.out.print是一個函數,因此不適合作爲賦值操作的左側。試試這個

System.out.print(fullName); 
//or 
System.out.println(fullName); 
0

print是一種方法,而不是一個變量:

System.out.print(fullName); 
0

而不是使用.next()繼續前進,嘗試把這一句的:userInput.nextLine();

含義只是添加.nextLine()方法調用而不是next()方法。 也System.out.println("text goes here "); 是如何使用此功能。 希望這有助於,歡呼。

0
fullName = userInput.nextLine(); //next()will stop with first space ,so it is not compatible with your code , but it is right 
System.out.print(fullName);//print() is method you need to pass to it argument not to assign to it values like variables 
0

我跑你的代碼和測試,結果發現,當你使用,

System.out.print

你需要包括打印後的括號()。無論如何,如果它只是被印像fullName

所以這裏的變量將是你修復

System.out.print(fullName); 

另外,我注意到,當你輸入全名,只打印名字。爲了解決這個問題,使用方法nextLine();而不是next();

這將允許打印全名。

0
import java.util.Scanner; 
public class CSCD210Lab2 { // class declaration 

public static void main(String[]args) { 
Scanner userInput = new Scanner(System.in); 
System.out.print("Enter Your Full Name: "); 
String fullName; 
fullName = userInput.nextLine(); 

System.out.print(fullName); // print user input 
} 
} 

完整的代碼在這裏。 nextline()將允許您在entrties之間佔用空間。每條線將被視爲單一條目。

乾杯!