Tes*_*est 1 java arrays class object
我想知道如何做到这一点.
我被告知要使用kb.nextLine()而不是kb.next(),但这只会导致在运行程序时跳过输入.
String address;
student.setAddress(address = kb.nextLine());
Run Code Online (Sandbox Code Playgroud)
然后告诉我这样做来解决它:
student.SetAddress(String address = kb.nextLine());
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
String cannot be resolved into a variable" "Syntax error on token "address"
你的第二个例子是错的.你的第一个例子看起来没问题.但不是很好.我假设你已经使用类似nextInt()或nextDouble().它们会留下一个尾随的新行,因此您需要使用它.
kb.nextLine(); // <-- consume empty trailing line.
String address;
student.setAddress(address = kb.nextLine()); //<-- reads line.
Run Code Online (Sandbox Code Playgroud)
如果您不需要本地地址副本,
kb.nextLine(); // <-- consume empty trailing line.
student.setAddress(kb.nextLine()); //<-- reads line.
Run Code Online (Sandbox Code Playgroud)
正如Scanner.nextLine()Javadoc所说,
使此扫描器前进超过当前行并返回跳过的输入.