java 如何使程序返回到指定地方
比如:让用户输入卡号,如果卡号不是16位,那么提示卡号有误,然后重新定位到main下第一行重新执行程序,java可以实现吗?importjava.util.Scanner...
比如:让用户输入卡号,如果卡号不是16位,那么提示卡号有误,然后重新定位到main下第一行重新执行程序,java可以实现吗?
import java.util.Scanner;
public class No11 {
public static void main(String args[]){
String getNum=""; // a:String getNum="";
char a;
Scanner scan=new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum=scan.next();
if(getNum.length()!=16){
System.out.println("请检查信用卡号是否正确!");
// goto a;
}
}
}
貌似goto不行,有没有其他好的方法解决这个问题呀?求高手解答~ 展开
import java.util.Scanner;
public class No11 {
public static void main(String args[]){
String getNum=""; // a:String getNum="";
char a;
Scanner scan=new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum=scan.next();
if(getNum.length()!=16){
System.out.println("请检查信用卡号是否正确!");
// goto a;
}
}
}
貌似goto不行,有没有其他好的方法解决这个问题呀?求高手解答~ 展开
3个回答
展开全部
import java.util.Scanner;
public class No11 {
public static void main(String args[]){
String getNum="";
Scanner scan=new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum=scan.next();
while(true){
if(getNum.length()!=16)
{System.out.println("请检查信用卡号是否正确!"); System.out.print("请输入信用卡号:");getNum=scan.next();}
else{ break;}
}}}
获取系统参数使用 while true 永久循环,当成功了 则执行else break 跳出,.当失败了 继续 next 获取
有问题可以追问 望采纳...
public class No11 {
public static void main(String args[]){
String getNum="";
Scanner scan=new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum=scan.next();
while(true){
if(getNum.length()!=16)
{System.out.println("请检查信用卡号是否正确!"); System.out.print("请输入信用卡号:");getNum=scan.next();}
else{ break;}
}}}
获取系统参数使用 while true 永久循环,当成功了 则执行else break 跳出,.当失败了 继续 next 获取
有问题可以追问 望采纳...
展开全部
要是想跳到其他行还有点难度,你跳到第一行直接用递归就行
main方法不能递归,你写个私有方法递归,然后main调用私有方法
public class No11 {
public static void main(String args[]) {
a();
}
static void a() {
String getNum = ""; // a:String getNum="";
char a;
Scanner scan = new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum = scan.next();
if (getNum.length() != 16) {
System.out.println("请检查信用卡号是否正确!");
a();
}
}
}
main方法不能递归,你写个私有方法递归,然后main调用私有方法
public class No11 {
public static void main(String args[]) {
a();
}
static void a() {
String getNum = ""; // a:String getNum="";
char a;
Scanner scan = new Scanner(System.in);
System.out.print("请输入信用卡号:");
getNum = scan.next();
if (getNum.length() != 16) {
System.out.println("请检查信用卡号是否正确!");
a();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把输入卡号那段代码写到一个方法里,如果!=16,调用一下那个方法
追问
这个我想过,但是如果第二次还是输错的话,那怎么办= =
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询