Java-当用户输入字符串时,它是字符串文字吗?

use*_*766 4 java string-literals

我有一个问题可以帮我做作业.我们使用字符串文字编写程序并反向打印.我写了它,它工作正常,但我有两个不同的版本.第一个使用扫描仪,因此用户可以输入字符串,然后反向打印.在第二个中,我声明一个字符串文字,然后反向打印.

我的问题不是关于我的程序运行正常,而是我找不到任何在线或我的书中说输入的字符串是字符串文字.我知道字符串文字通常写成

String a = "Welcome to Java"
Run Code Online (Sandbox Code Playgroud)

但可以写成

String a = new String("Welcome to Java") 
Run Code Online (Sandbox Code Playgroud)
  • 那么输入的字符串是不是与字符串文字相同?
  • 是否必须用引号写出才能被视为字符串文字?

我假设答案是肯定的,因为我的书基本上说它必须在引号中,但我想在我递交我的作业之前仔细检查我正在转向正确的版本.在此先感谢任何澄清!

Nat*_* W. 7

字符串文字是引号中的字面值,字面意思是在代码中:

String literal = "string literal";
Run Code Online (Sandbox Code Playgroud)

输入字符串不是字符串文字,只是字符串.