idea: 这锅我不背 并不是idea设置错误的原因
java所有的输出流都是一个Writer,大部分情况Writer都带有缓存。你这个程序运行时间太短,写入数据太少根本触发不了flush操作。所以在main方法退出时候才会一并flush。
并且你打印异常使用的是printStackTrace方法,此方法会把消息写入到System.err中。
所以在你程序退出前System.out和System.err会同时向控制台写入消息,这就形成了一个「并发」的场景,输出当然会乱。
解决:使用一种输出方式