首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

很简单的有关问题:怎么输入字母s以后,循环停止

2012-04-20 
很简单的问题:如何输入字母s以后,循环停止?要求:这个循环要求输入最多100个数字。如果一直输入数字,一直循

很简单的问题:如何输入字母s以后,循环停止?
要求:这个循环要求输入最多100个数字。如果一直输入数字,一直循环。如果输入了特定字母s,这个循环停止。如果到了100次,也停止。如果输入的是非数字和非字母s,重新要求用户输入。

import java.io.*;

public class 123 {

  public static void main(String[] args) throws IOException {
  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  int[] input = new int[100];
  for (int i = 0; i < 100; i++) {
  int num = 0;
  boolean stop = false;
  while (!stop) {
  try {
  System.out.print("Input: ");
  num = Integer.parseInt(in.readLine());
  stop = true;
  input[i] = num;
  } catch (NumberFormatException nfe) {
  System.out.println("Input is invalid.");
  }
  }
  }
}

这是我写的,但是不能在用户输入字母s的时候停止,请问怎么修改?

[解决办法]
在你代码的基础上稍微改了一下。。。

Java code
    public static void main(String[] args) throws IOException {        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));        int[] input = new int[100];        for (int i = 0; i < 100; i++) {            int num = 0;            boolean stop = false;            while (!stop) {                try {                    System.out.print("Input: ");                    String s = in.readLine();                    if ("s".equals(s.toLowerCase())) {                        return;                    }                    num = Integer.parseInt(s);                    stop = true;                    input[i] = num;                } catch (NumberFormatException nfe) {                    System.out.println("Input is invalid.Pls input again!");                }            }        }    }
[解决办法]
while (!stop) {
try {
System.out.print("Input: ");
String str = in.readLine());
if ("s".equals(str.toLowerCase()) ){
break ;
}
num = Integer.parseInt(str);
input[i] = num;
} catch (NumberFormatException nfe) {
System.out.println("Input is invalid.");
}

热点排行