【问题标题】:Java controlf and escape sequencesJava 控制和转义序列
【发布时间】:2013-07-17 21:49:22
【问题描述】:

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

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 );

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

谢谢

【问题讨论】:

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


    【解决方案1】:

    这个:

    numberOfStudents "\n"
    

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

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

    如果你愿意的话......但你不能像那样把字符串文字放在最后。

    我建议您的最终代码无论如何都是最干净的,尽管我会删除换行符之前的空格。另一种选择是让println 为您设置换行符:

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

    【讨论】:

      【解决方案2】:

      你只是忘记了numberOfStudents"\n"之间的+

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-27
        • 2011-10-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多