作者HeyScng ( )
看板java
标题Re: [问题] system.out.flush()必要吗??
时间Wed Apr 25 16:03:48 2007
Java API doc 中 java.io.PrintStream 最前面的介绍
the flush method is automatically invoked after a byte array is
written, one of the println methods is invoked, or a newline
character or byte ('\n') is written.
※ 引述《HeyScng ( )》之铭言:
: import java.io.*;
: public class Keyboard
: {
: public static void main(String args[]) throws Exception
: {
: BufferedReader br=new BufferedReader(
: new InputStreamReader(System.in));
: String line;
: System.out.print("请输入一个字串: ");
: System.out.flush();
: ^^^^^^^^^^^^^^^^^^^
: .
: .
: .
: 书上写 System.out.flush() 为强迫出清缓冲器而将字串输出至萤幕
: 但是在这个程式中就算不清空亦可
: 所以我的问题来了 在system.out情况下 如果不flush可能有错
: 我只看过C中缓冲器的概念:我记得是这样的
: input 34 後执行 c1=getchar() c2=getchar() 此时c1=3 c2=4
: 但若为 输入345时 执行 c1=getchar() c2=getchar()
: 若不清空缓冲器 当再次input 1时 执行getchar() 得出的却为5 不为 1
: 所以我的问题是在什麽情况情况下 如果不flush可能有错!!
: 或是只是要释放缓冲器空间而已
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.233.247.211