int dieNum = 0;
try {
for (;;){
System.out.print("Please input the number :");
dieNum = System.in.read() - 48;
System.out.println("just input die is :" + dieNum);
if (dieNum < 0 || dieNum > 9)//判断输入的是否为数字0--9;
{
System.out.println("input again");
continue;//不是则从新输入;
} else {
break;//是则跳出;
}
}
} catch (IOException e) {
e.printStackTrace();
}
try {
for (;;){
System.out.print("Please input the number :");
dieNum = System.in.read() - 48;
System.out.println("just input die is :" + dieNum);
if (dieNum < 0 || dieNum > 9)//判断输入的是否为数字0--9;
{
System.out.println("input again");
continue;//不是则从新输入;
} else {
break;//是则跳出;
}
}
} catch (IOException e) {
e.printStackTrace();
}
byte[] bytes
System.in.read(bytes)
再将bytes转化为你要数字吧
你说错了,System.in.read()返回的读取到的字节,而不是字节数。
futureroad(future)
怎么不能预期运行,你说清楚来。
Please input the number :r
just input die is :66
input again
Please input the number :just input die is :-35
input again
Please input the number :just input die is :-38
input again
为什么会出现2次"input again
Please input the number :just input die is :"
而且还出现了两个奇怪的数字-35,-38
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
String readLine=in.readLine();
int x=Integer.parseInt(readLine);
System.out.println(x);