A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张学东 中级黑马   /  2012-10-21 17:08  /  1025 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.itheima.day19;

  2. import java.util.*;

  3. public class scannerDemo {

  4.         /**
  5.          * @param args
  6.          */
  7.         public static void main(String[] args) {
  8.                 Scanner sn=new Scanner(System.in);
  9.                 String in=null;
  10.           while(in!="over"){
  11.                   in=sn.next();
  12.                             
  13.                   System.out.println(in);
  14.                                    
  15.           }
  16.          System.out.println("已经退出");
  17.         }

  18. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

3 个回复

倒序浏览
这个是个简单的while循环,当你的输入不是over的时候,它就会一直提示输入,所以退出while循环,只要输入over就行了

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

回复 使用道具 举报
马磊 发表于 2012-10-21 17:11
这个是个简单的while循环,当你的输入不是over的时候,它就会一直提示输入,所以退出while循环,只要输入ov ...

退不出来的...控制台是输不出“已经退出”
回复 使用道具 举报
大意了,应该用while(!("over").equals(in))  这个判断
因为一个字符串是一个对象,每一个新的字符串指向不同的内存地址,==只是在比较它们的地址,所以in的“over” 和字符串“over”的地址是不一样的,所以while不会退出

用String的equals方法可以比较它们的内容

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马