如果我的输入不正确,程序将要求用户再次输入。我能这样做吗? [英] If my input was incorrect, the program will ask the user to input again. Can I do that?
本文介绍了如果我的输入不正确,程序将要求用户再次输入。我能这样做吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,
我想用java输入日期和月份。如果我的输入不正确,程序将要求用户再次输入。例如,如果我输入4月32日,程序将显示无效并要求用户输入正确的日期。这就是我所做的,但不能循环。 Thx。
我尝试了什么:
import java.util。*;
public class tanggal
{
public static void main( String [] args)
{
Scanner scan = new Scanner(System.in);
int tanggal = 0;
字符串 bulan = ;
System.out.print( Tanggal:);
tanggal = scan.nextInt(); scan.nextLine();
System.out.print( Bulan:);
bulan = scan.nextLine();
if (bulan.equals( Feb) )&& tanggal> 28)
{
System.out.println( 输入无效);
tanggal = 0;
}
else if (bulan.equals( Jan)&&& bulan.equals( < span class =code-string> Maret)&& bulan.equals( Mey )&& bulan.equals( Juli)&& bulan.equals( Agustus)&& bulan.equals( Oktober)&&& bulan.equals( < span class =code-string> Desember)|| tanggal> 31)
{
System.out.println( 输入无效);
tanggal = 0;
}
else if (bulan.equals( 四月)&&& bulan.equals( < span class =code-string> Juni)&& bulan.equals( 9月)&& bulan.equals( 11月)|| tanggal> 30)
{
System.out.println( 输入无效) ;
tanggal = 0;
}
else
{
System.out.println( 输入无效);
tanggal = 0;
}
}
}
解决方案
只需将所需部分包装在循环中并使用变量来控制循环:bool valid = false;
while (!valid){
valid = true;
// 在这里做你的东西,当它变得无效时将'valid'设置为false,
// 可能以你的String bulan =;开头line
// ...
}
Hello,
I want to input date and months with java. If my input was incorrect, the program will ask the user to input again. Example, If I input 32th April, the program will say "Invalid" and ask the user to input with correct date. This is what I made, but can't Looping. Thx.
What I have tried:
import java.util.*;
public class tanggal
{
public static void main(String [] args)
{
Scanner scan=new Scanner(System.in);
int tanggal=0;
String bulan="";
System.out.print("Tanggal:");
tanggal=scan.nextInt();scan.nextLine();
System.out.print("Bulan:");
bulan=scan.nextLine();
if(bulan.equals("Feb")&&tanggal>28)
{
System.out.println("Input invalid");
tanggal=0;
}
else if(bulan.equals("Jan")&&bulan.equals("Maret")&&bulan.equals("Mey")&&bulan.equals("Juli")&&bulan.equals("Agustus")&&bulan.equals("Oktober")&&bulan.equals("Desember")||tanggal>31)
{
System.out.println("Input invalid");
tanggal=0;
}
else if(bulan.equals("April")&&bulan.equals("Juni")&&bulan.equals("September")&&bulan.equals("November")||tanggal>30)
{
System.out.println("Input invalid");
tanggal=0;
}
else
{
System.out.println("Input invalid");
tanggal=0;
}
}
}
解决方案
Just wrap the required portion in a loop and use a variable to control looping:bool valid = false; while (!valid) { valid = true; //Do your stuff here and set 'valid' to false when it becomes invalid, //probably starting with your "String bulan="";" line //... }
这篇关于如果我的输入不正确,程序将要求用户再次输入。我能这样做吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文