java语言中输入不合适怎么重新输入,是用循环结构吗?

题如下:用户输入1,2,3的话可继续进行程序,如果输入4或5或别的数字,则重新输入,怎么弄呢。publicclassHome{publicstaticvoidmain(S... 题如下:用户输入1,2,3的话可继续进行程序,如果输入4或5或别的数字,则重新输入,怎么弄呢。
public class Home{
public static void main(String [] args){
System.out.println(" 欢迎使用我行我素购物管理系统 ");
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");
System.out.println(" 1、登 录 系统 ");
System.out.println(" 2、更 改 管 理 员 密 码 ");
System.out.println(" 3、退 出 ");
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");
System.out.print("请输入您的选择:");
java.util.Scanner input=new java.util.Scanner(System.in);
int num1=input.nextInt();
展开
 我来答
java_jin
2014-04-02
知道答主
回答量:36
采纳率:0%
帮助的人:22.4万
展开全部

boolean flag = false;

do{

int num1= input.nextInt();

if(num1 !=??)//不满足条件{
flag=true;
}

}while(flag);

GFP_Cold
2014-04-02 · TA获得超过817个赞
知道小有建树答主
回答量:683
采纳率:50%
帮助的人:544万
展开全部
你好,你可以用开关语句:
switch(){

case 1:语句块;break;

case 2:语句块;break;

case 3:语句块;break;

default 语句块;

}
就可以了,把你输入1,2,3的操作都写好,然后default那里就写重更新输入这个语句就可以了。希望能帮到你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kuklyk
推荐于2017-10-06 · TA获得超过416个赞
知道小有建树答主
回答量:682
采纳率:78%
帮助的人:435万
展开全部

用循环结构和catch 比如

 Scanner scanner = new Scanner(System.in);
 System.out.println("请输入出发时间(如19:12):");
 while(b==false){
str=scanner.next();
try {
str1=str.split(":");
h1=Integer.parseInt(str1[0]);
m1=Integer.parseInt(str1[1]);
b=true;
} catch (Exception e) {
System.out.println("请输入正确的格式:");
}
 }

这是我以前写的一个小程序 用来求两个时间的差

输入两个数字 中间用 : 分开并存入str中 然后在try中分割str

如果格式有误则会输出格式有误然后再次循环

直至格式正确让b=true解除循环

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逐浪336
2015-07-30 · 超过24用户采纳过TA的回答
知道答主
回答量:117
采纳率:0%
帮助的人:52.1万
展开全部
没有明白要问什么。
你是指在命令行中,允许用户重复的输入吗?
如果是的话,可以用while, 或do while ,当符合某个条件是推出循环。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幸福生活有肉吃
2014-04-02 · TA获得超过122个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:135万
展开全部
用int读取,还要小心输入字符...
只是int的话...
这种都是在无限循环里面,用输入阻塞,每次输入判断一次么,对的就在case里面跳出去...
boolean flag = false;
while(!flag){
System.out.println("...");

int num1 = input.nextInt();
switch(num1){
case 1: 1操作 ;flag=true;break;

case 2: 2操作 ;flag=true;break;

case 3: 3操作 ;flag=true;break;

default:其他数操作,说句重新输入什么的 ;flag=false;break;
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式