📄 login.java
字号:
/**
* 这是检验用户登录的类,
*/
package user;
import java.util.StringTokenizer;
import util.FactoryClass;
import util.FatherInterface;
import util.Input;
import util.ShowGUI;
public class Login implements FatherInterface {
String cardNo = null;
String name = "";
String pass = "";
public Login() {
ShowGUI.showFace("faceLogin.txt");
System.out.print("请输入您的卡号:");
cardNo = Input.getInput();
if (Input.isNumeric(cardNo)) {
showLoginInfo(isLogin());// 判断登录是否成功
} else {
System.out.println("卡号必须为数字,您的输入有误");
FactoryClass.getInstance(FactoryClass.classNameArray[1]);
}
}
private boolean isLogin() {
if (choseCurrentUser(cardNo)) {
System.out.print("请输入您的用户名:");
name = Input.getInput();
System.out.print("请输入您的密码:");
pass = Input.getInput();
if (name.equals(CurrentUser.currentUserName)
&& pass.equals(CurrentUser.currentUserPass)) {
return true;
}
}
return false;
}
public boolean choseCurrentUser(String inputCardNo) {// 这是检测用户帐户卡号是否存在的方法
// 如果从帐号文件中查询到了该卡号,则就将该卡号对应的用户名、用户密码和用户钱数分别读取到当前用户类CurrentUser的currentUserName
// currentUserPass currentUserMoney三个变量中,以便对用户帐户进行程序运行时的更改操作
int i = 0;
String str;
StringTokenizer tempTokenizer = new StringTokenizer(
CurrentUser.allAccounts[0]);
for (i = 0; i < CurrentUser.userNum; i++) {
tempTokenizer = new StringTokenizer(CurrentUser.allAccounts[i]);
str = tempTokenizer.nextToken();
if (str.equals(inputCardNo)) {
CurrentUser.index = i;
CurrentUser.currentCardNo = str;
CurrentUser.currentUserName = tempTokenizer.nextToken();
CurrentUser.currentUserPass = tempTokenizer.nextToken();
CurrentUser.currentUserMoney = Float.parseFloat(tempTokenizer
.nextToken());
return true;
}
}
System.out.println("错误,您所输入的卡号不存在");
FactoryClass.getInstance(FactoryClass.classNameArray[1]);
return false;
}
private void showLoginInfo(boolean loginOrNot) {
if (loginOrNot) {
System.out
.println("**************************欢迎,登录成功***************************");
System.out.println("登录信息:卡号 " + CurrentUser.currentCardNo + " 用户名:"
+ CurrentUser.currentUserName + "用户密码:"
+ CurrentUser.currentUserPass);
FactoryClass.getInstance(FactoryClass.classNameArray[3]);
} else {
System.out.println("你输入的用户名和密码错误");
FactoryClass.getInstance(FactoryClass.classNameArray[1]);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -