以与给定java程序相反的顺序获取输出
我在NetBeans IDE上运行了以下java代码。我第一次得到的输出是以与给定java程序相反的顺序获取输出,java,system.out,Java,System.out,我在NetBeans IDE上运行了以下java代码。我第一次得到的输出是 aaaaaa aaaa ! ! aaaaaa aaaa 当我第二次运行相同的代码时,我得到的输出是 aaaaaa aaaa ! ! aaaaaa aaaa 按相反的顺序…为什么??对于同一段代码 public class check { public String toString(){ String hello="aaaaaa aaaa"; return
aaaaaa aaaa
!
!
aaaaaa aaaa
当我第二次运行相同的代码时,我得到的输出是
aaaaaa aaaa
!
!
aaaaaa aaaa
按相反的顺序…为什么??对于同一段代码
public class check {
public String toString(){
String hello="aaaaaa aaaa";
return hello;
}
public static void main(String[] args) {
check obj=new check();
char[] abc=new char[5];
System.err.println(obj);
String hello="heaa^qwertyui";
hello.getChars(2, 3, abc, 0);
System.out.println(abc);
}
}
打印到
System.err
和System.out
。这些是碰巧打印到控制台的不同流。无法预测它们的刷新顺序及其输出的显示顺序。可以同时打印到System.err
和System.out
。这些是碰巧打印到控制台的不同流。无法预测它们的刷新顺序及其输出的显示顺序。将System.err.println
更改为System.out.println
public class check {
public String toString(){
String hello="aaaaaa aaaa";
return hello;
}
public static void main(String[] args) {
check obj=new check();
char[] abc=new char[5];
System.out.println(obj);
String hello="heaa^qwertyui";
hello.getChars(2, 3, abc, 0);
System.out.println(abc);
}
}
将
System.err.println
更改为System.out.println
public class check {
public String toString(){
String hello="aaaaaa aaaa";
return hello;
}
public static void main(String[] args) {
check obj=new check();
char[] abc=new char[5];
System.out.println(obj);
String hello="heaa^qwertyui";
hello.getChars(2, 3, abc, 0);
System.out.println(abc);
}
}
主函数中的字符串是“he!#$%^^qwertyui”而不是“heaa^qwertyui”主函数中的字符串是“he!#$%^^qwertyui”而不是“heaa^qwertyui”
println
具有隐式flush
println
具有隐式flush
。