免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1456 | 回复: 4
打印 上一主题 下一主题

初学JAVA 问个有点莫名其妙的循环问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-07 21:39 |只看该作者 |倒序浏览
程序目的是输入10个字符 按字母表顺序输出第一个和最后一个字母


  1. public class java_ex2.11
  2. {
  3.   public static void main(final String args[])
  4.   {
  5.     KeyboardInput in=new KeyboardInput();
  6.     char c;
  7.     char temp_large,temp_small;

  8.     System.out.print("Input 1 character: ");
  9.     c=in.readCharacter();
  10.     temp_large=temp_small=c;
  11.    
  12.     for(int n=1; n<10; n++)
  13.     {
  14.         System.out.print("Input "+(n+1)+" character: ");
  15.         c=in.readCharacter();
  16.         if(temp_large<c)
  17.         temp_large=c;
  18.         if(temp_small>c)
  19.         temp_small=c;
  20.     }
  21.     System.out.println(temp_large+"      "+temp_small);
  22.   }
  23. }
复制代码


可是运行很奇怪。。第一个字符正常输入 然后就一下子连续输出Input 2 character: Input 3 character: Input 4 character:  输入一个字符 又连续输出Input 5 character: Input 6 character: Input 7 character:  。。。 这是为什么?程序哪里错了? 谢谢指教~

论坛徽章:
0
2 [报告]
发表于 2005-12-07 21:43 |只看该作者
你的意思不正是那个吗?每输入一个就显示一下提示

论坛徽章:
0
3 [报告]
发表于 2005-12-07 21:56 |只看该作者
原帖由 wobushiwo 于 2005-12-7 21:43 发表
你的意思不正是那个吗?每输入一个就显示一下提示


对吖 我本意是输入一个提示一个
可实际输出是 第一个字符是符合要求的  后面都是连续输出三个提示 然后给输入一个字符 再连续输出三个提示。。。  很不明白。。因为JAVA初学 难道JAVA的循环有什么特殊的地方?

论坛徽章:
0
4 [报告]
发表于 2005-12-07 23:11 |只看该作者
你输入一个字母之后是不是回车了?

我猜换行和回车应该也会被in.readChar()读取

论坛徽章:
0
5 [报告]
发表于 2005-12-08 11:03 |只看该作者
原帖由 sakulagi 于 2005-12-7 23:11 发表
你输入一个字母之后是不是回车了?

我猜换行和回车应该也会被in.readChar()读取


是回车了    可是......还是有点不明白
我的readChar()的实现是:

  1. public final synchronized char readCharacter()
  2. {
  3.   char c=' ';
  4.   try
  5.   {
  6.     c=(char)in.read();
  7.   }
  8.   catch(IOException e) { }
  9.   return c;
  10. }
复制代码

麻烦再帮我看看好么~ 谢谢

另: 我把该程序放到linux下编译, 就变成连续输出两个提示 输入一个字符 再连续输出两个提示了... 前面是在windows下编译的...这和in.read()有关吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP