用户键盘输入整数:
如果输入整数,求和。
如果输入的不是整数:重新输入:ddd,123
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
请输入一个整数:
br.readLine();-->String line
判断line是否由数字组成,是,读下一个,不是,重新输入
*/
// 方法一
package homeWork;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test2 {
public static void main(String[] args) {
BufferedReader bReader = null;
bReader = new BufferedReader(new InputStreamReader(System.in));
try {
String line = null;
int sum = 0;
for (int i = 0; i < 2; i++) {
System.out.println("请输入第" + (i + 1) + "整数");
// 获取键盘输入的数据
line = bReader.readLine();
// 判断是否是数字
if (line.matches("[0-9]+")) {
// 将数字字符串转成Integer类型
sum += Integer.parseInt(line);
} else {
i--;
continue;
}
}
System.out.println(sum);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
// 方法二
package homeWork;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test3 {
public static void main(String[] args) {
int sum = 0;
int count = 0;
String line = null;
BufferedReader bReader = null;
do {
System.out.println("请输入第 " + (count + 1));
// 创建缓冲字符输入流,从键盘输入数据
bReader = new BufferedReader(new InputStreamReader(System.in));
try {
// 获取数据
line = bReader.readLine();
// 判断是否是整数
if (line.matches("[0-9]+")) {
sum += Integer.parseInt(line);
count++;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 判断数据个数是否满足需求
} while (count < 2);
System.out.println("两个整数之和为:" + sum);
try {
if (bReader != null) {
bReader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
若有不正之处,请多多谅解并欢迎批评指正。
请尊重作者劳动成果,转载请标明原文链接:
http://blog.csdn.NET/weishimeng17