相关疑难解决方法(0)

Java:System.out.println和System.err.println乱序

System.out.println()System.err.println()电话没有按照我制作的顺序打印到控制台.

public static void main(String[] args) {
    for (int i = 0; i < 5; i++) {
        System.out.println("out");
        System.err.println("err");
    }
}
Run Code Online (Sandbox Code Playgroud)

这会产生:

out
out
out
out
out
err
err
err
err
err
Run Code Online (Sandbox Code Playgroud)

而不是交替outerr.为什么是这样?

java console system

52
推荐指数
3
解决办法
2万
查看次数

在java中System.out和System.err之间的竞争

请考虑这个java代码:

public class CMain {
    public static void main(String[] args){

        for (int i = 0; i < 10; i++) {
            System.out.println("A");
            System.err.println("B");
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

通过快速查看代码,我们中的一些人可能认为输出必须是As和Bs的印刷品.不过不是!它是10个字符和10个B字符的随机外观.像这样的东西:

在此输入图像描述

这是为什么?什么是它的解决方案,以便As和Bs交替显示(ABABAB ...)在我问这个问题之前,我检查了其他几个类似的问题以寻求解决方案,而不是为我的案例工作!我带来了一些在这里:

java synchronization system.out system.err

17
推荐指数
3
解决办法
3423
查看次数

标签 统计

java ×2

console ×1

synchronization ×1

system ×1

system.err ×1

system.out ×1