题目描述:
设计一个简单的Java登录程序。若用户输入正确的用户名和密码,则显示欢迎信息,否则输错超过三次后自动推出系统。
解题思路:
提前创建多个字符串,来表示用户名,输入的用户名没有的话,就让多次输入,直到有对应的用户名为止。接下来就输入密码,把输入的密码与用户名下对应的密码相比较,用for()循环中的变量i来记录输密码的次数,输入对了就终止程序,输错三次也终止程序
代码参考:
import java.util.Scanner;
class Hello {
public static void main(String[] args) {
// TODO Auto-generated method stub
String n1=new String("Hello java");
String n2=new String("你好,Java");//创建任意个数组,来代表已注册的用户名
System.out.println("请输入用户名:");
Scanner in=new Scanner(System.in);
String x=in.nextLine();//输入用户名
while(x.equals(n1)==false&&x.equals(n2)==false) {
System.out.println("用户不存在,请再次输入");
x=in.nextLine();
}//如果输入的用户名不对,没有与之对应的,就多次输入直到有对应的用户名为止
switch(x) {
case "Hello java"://判断输入的用户名是哪一个用户
System.out.println("你的用户名是"+n1+"\n请输入密码");
for(int i=0;i<3;i++) {//用来记录输密码的次数,如果输入正确的密码就直接终止程序
String m = in.nextLine();
if (m.equals("Hello Word")) {
System.out.println("正在登录请稍后 》》");
break;//如果输入正确的密码就直接终止程序
}
else System.out.println("请在输入一次,你还有" + (2 - i) + "次输入机会");
}
break;//输错超过三次,终止程序
case "你好,Java"://判断输入的用户名是哪一个用户
System.out.println("你的用户名是"+n2+"\n请输入密码");
for(int i=0;i<3;i++) {//用来记录输密码的次数,
String m=in.nextLine();
if(m.equals("你好,世界”")) {
System.out.println("正在登录请稍后 》》");
break;//如果输入正确的密码就直接终止程序
}
else System.out.println("密码错误 请在输入一次,你还有"+(2-i)+"次输入机会");
}
break;
}
}
}
<修改了代码中因大括号位置不正确,导致else语句与if语句分离,运行时else语句报错问题>
更多推荐
用Java编写一个简单的【登录程序】
发布评论