为什么不是“ 当字符串类似于“abc”时,“ 解释为换行符 abc" 是通过 Java 中的 Scanner 类作为输入给出的吗?

问题描述 投票:0回答:1

在 Java 中,当我们尝试打印硬编码字符串,例如“abc abc”,我们观察到第一个 abc 之后的行发生变化,但是当我们通过 sc.next() 或 sc.nextLine() 获取相同的输入时,它会打印出 ' ' 作为字符串本身的一部分,没有任何行更改。

import java.util.*;
public class Main
{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s1 = "abc\nabc";
        String s2 = sc.nextLine();
        System.out.println(s1);
        System.out.println(s2);
    }
}

输入:

abc
ABC

输出:

 abc
 ABC
 ABC
ABC

输入的String打印回来时不应该也换行吗?

java string input java.util.scanner newline
1个回答
0
投票

nexLine 方法正在寻找行分隔符。

如果运行:System.getProperty("line.separator") 它将返回特定于您的操作系统的行分隔符。在 Windows 上它将返回 在 Unix 上它会返回 .

© www.soinside.com 2019 - 2024. All rights reserved.