黑马程序员技术交流社区

标题: IO疑问 [打印本页]

作者: 戎石锁    时间: 2012-8-21 11:58
标题: IO疑问
import java.io.*;
public class TestTransForm2 {
  public static void main(String args[]) {
    InputStreamReader isr =
            new InputStreamReader(System.in);
    BufferedReader br = new BufferedReader(isr);
    String s = null;
    try {
      s = br.readLine();
      while(s!=null){
        if(s.equalsIgnoreCase("exit")) break;
        System.out.println(s.toUpperCase());
        s = br.readLine();
      }
      br.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}
看了视频突然在if判断那里卡住了,一直没能缓过来。希望懂的给点指点...谢谢
作者: 胡进辉    时间: 2012-8-21 12:07
就是相当于给程序一个关闭的方法,当你输入为“exit”时候,就跳出循环了。相当于你玩累了想休息就敲个exit,没有累就继续测试你的程序。。。
作者: 刘芮铭    时间: 2012-8-21 12:12
if(s.equalsIgnoreCase("exit")) break; //楼主只要细心的观察以及查询API文档,这个问题非常容易可以理解,equalsIgnoreCase()这个方法是String的方法,
//这个方法的作用是:将此 String 与另一个 String 比较,不考虑大小写。在这里的意思是:当用户输入"exit"时,就退出循环!

        System.out.println(s.toUpperCase());
        s = br.readLine();

作者: 黑马王建伟    时间: 2012-8-21 12:15
本人都加注释了,楼主可以参考下
  1. import java.io.*;
  2. public class Hello_a {
  3.   public static void main(String args[]) {
  4.     InputStreamReader isr = new InputStreamReader(System.in);//创建一个输入流
  5.     BufferedReader br = new BufferedReader(isr);//读取输入流
  6.     String s = null;
  7.     try {
  8.       s = br.readLine();//读取一行
  9.       while(s!=null){
  10.         if(s.equalsIgnoreCase("exit")) break;//如果读取的输入流文字(忽略大小写)为exit,就停止运行程序
  11.         System.out.println(s.toUpperCase());//把读取进来的转换成大写打印,
  12.         s = br.readLine();//如果不是exit,可继续读取控制台
  13.       }
  14.       br.close();//关闭读取
  15.     } catch (IOException e) {
  16.       e.printStackTrace();
  17.     }
  18.   }
  19. }
复制代码

作者: 李知伦    时间: 2012-8-21 12:17
   while(s!=null){
        if(s.equalsIgnoreCase("exit")) break;
        System.out.println(s.toUpperCase());
        s = br.readLine();
      }
给  while循环一个break退出的方法,而不至于无限循环,也就是程序停止不了,必须强行退出
而这个break的条件是,输入的字符串是忽略大小写的exit




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2