【问题标题】:Java Is "cursor move" to next line counts as a new line? 'System.out.println'Java“光标移动”到下一行算作新行吗? 'System.out.println'
【发布时间】:2020-10-26 06:44:35
【问题描述】:

我的朋友问了我一个问题,我不确定我是否给了他正确的答案。

鉴于该代码:

System.out.print("Hello");
System.out.println(" There");
System.out.println("How are you?");

问题:输出中有多少行?

所以,文本实际上是两行,但根据定义

println() 方法类似于 print() 方法,只是它在打印结果后将光标移动到下一行。当您希望将结果分成两行时使用它。它是用“out”对象调用的。

读完这篇文章后,我想知道 courser 是否将移动到新行算作一行,所以输出中有 3 行而不是 2 行可见。

我运行了一个简单的测试,将带有两个“\n”字符(两个 println 语句)的字符串输出到文件中,然后计算行数,得到 2 的结果。

当我编写测试代码时,我注意到 VS 代码,当按“Enter”换行时,光标移动为新行。

很高兴听到你的回答! 谢谢!

【问题讨论】:

  • 两行。第一次打印开始第一行。 println 开始第二行。最后的语句在第二行继续。它不以换行符结尾,就是这样。两行。
  • 对不起,我已经编辑过了,代码第三行是println,不是print。
  • 那么技术上可能是三行,但考虑到最后的换行在第二行的末尾,有些人会说两行。

标签: java stdout


【解决方案1】:

运行简单代码后:

// PrintTest.java
public class PrintTest {
    public static void main(String[] args) {
        System.out.println("Test");
    }
}

当我从 Windows Powershell、CMD 和 Linux 终端运行它时,我得到一致的输出:

Username@env> java PrintTest
Test
Username@env>

输出只有1行,然后程序终止。

对于

System.out.print("Hello");
System.out.println(" There");
System.out.println("How are you?");

2 行,然后终止。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2013-07-25
    相关资源
    最近更新 更多