| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 502 人关注过本帖
标题:输入无法暂缓。。。
只看楼主 加入收藏
BNV
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2010-10-14
收藏
 问题点数:0 回复次数:5 
输入无法暂缓。。。
程序代码:
import *;
public class InRead {

    /**
     * @param args
     */
    public static void main(String[] args) throws IOException
    {
        // TODO Auto-generated method stub

        BufferedReader keyin=new BufferedReader(new InputStreamReader(System.in));

        String c;
        char a;

        System.out.print("input a character:\t");
        a=(char)System.in.read();
        System.out.println("The character you input is:\t"+a);

        System.out.println("Type Enter to continue...");
        System.in.read();

        System.out.print("input a String:");
        c=keyin.readLine();
        System.out.println("The String you input is:"+c);
       
    }

}


结果却是input a character:    e
The character you input is:    e
Type Enter to continue...
input a String:The String you input is:



我只输入了e,然后回车,还没有输入String呢,就全部跳出来了

2012-05-11 14:21
爱编程的艾
Rank: 2
等 级:论坛游民
帖 子:19
专家分:38
注 册:2011-4-16
收藏
得分:0 
貌似需要flush一下、、、、就是keyin.fulsh();
2012-05-11 23:26
BNV
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2010-10-14
收藏
得分:0 
加了System.out.flush()也不行
2012-05-12 00:17
爱编程的艾
Rank: 2
等 级:论坛游民
帖 子:19
专家分:38
注 册:2011-4-16
收藏
得分:0 
不是这个flush,是你那个bufferreader keyin要flush
2012-05-12 12:06
BNV
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2010-10-14
收藏
得分:0 
回复 4楼 爱编程的艾
keyin没有flush()这个方法吧。。。
2012-05-12 16:01
ab1034982749
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:215
专家分:1185
注 册:2012-4-14
收藏
得分:0 
因为当输入一个字符 按了回车以后,就相当于输入了三个字符(回车为两个字符);
所以说需要再添加一个 System.in.read();才能把缓存的字符读完,
就是说在System.out.println("Type Enter to continue...");
         System.in.read();
 后再加一个   System.in.read();
 就行了。
2012-05-16 23:14
快速回复:输入无法暂缓。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017261 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved