求助大佬,如图,但是要用do while语句,输入语句要用System.in.read()。

 

import java.io.IOException;
import java.io.InputStream;
public class Test {
    public static void main(String[] args) throws IOException {
        boolean flag;
        System.out.print("请输入(按回车结束):");
        byte num[]=null;
        int count=0;
        InputStream input=null;
        do{
            flag=false;
            input = System.in;
            num=new byte[10];
            count=input.read(num,0,num.length);
            for(int i=0;i<count;i++){
                if (num[i]>= 48 && num[i] <= 57 ||num[i]==10) {
                    continue;
                } else {
                    System.out.print("不要输入字符!重新输入(按回车结束):");
                    flag=true;
                    break;
                }
            }
        }while (flag);
        System.out.print("你输入的是:");
        for (int i=0;i<count-1;i++) {
            System.out.print((char) num[i]);
        }
        System.out.println();
    }
}

请采纳一下哦

这个简单啊,就是读取,然后判断输入的是否为数字。

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632