Java控制和转义序列

时间:2013-07-17 21:49:23

标签: java syntax escaping syntax-error system.out

我正在尝试使用转义序列跳过一行,我的代码看起来像

System.out.printf("Number of students: " + numberOfStudents "\n");

但是我收到一条错误,上面写着“令牌上的语法错误”“\ n”“,删除此令牌”

尝试

时出现同样的错误
System.out.printf("Number of students: %c", numberOfStudents "\n");

此代码有效但我正在努力了解我做错了什么

System.out.printf("Number of students: %d \n", numberOfStudents );

在引用变量后是否存在禁止使用转义序列的规则?

由于

2 个答案:

答案 0 :(得分:2)

此:

numberOfStudents "\n"

无效。你有两个令牌 - 一个标识符和一个字符串文字 - 它们之间只有一个空格。那是无效的。你可以使用串联:

System.out.printf("Number of students: " + numberOfStudents + "\n");

如果你想...但你不能像这样把字符串文字放在最后。

我建议你最后的代码是最干净的,尽管我会在换行前删除空格。另一种选择是让println为你打开换行符:

System.out.println("Number of students: " + numberOfStudents);

答案 1 :(得分:1)

您忘记了+numberOfStudents之间的"\n"

System.out.printf("Number of students: " + numberOfStudents + "\n");

在您要连接的所有内容之间必须有+运算符,就像您在数学中不会说1 + 2 3一样。