java学生管理系统登录注册_Java程序---学生管理系统的登录和注册
/**
*
* 用戶信息類,描述了用戶的信息
* */
public class User {
/**
* 成員變量
*
* */
private String username ;
private String password;
public User() {
super();
}
public User(String username, String password) {
super();
this.username = username;
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
/**
* 用戶操作的接口實(shí)現(xiàn)類
* */
public class UserDaoImpl implements UserDao {
private static ArrayList array = new ArrayList() ;
//登陸
@Override
public boolean isLogin(String username, String password) {
//注冊完畢,才能登陸:用戶都在集合中,需要遍歷集合,遍歷集合之前,還需要?jiǎng)?chuàng)建ArrayList
//ArrayList array = new ArrayList() ;
//定義一個(gè)標(biāo)記
boolean flag = false ;
//遍歷集合
for(User u : array){
//需要判斷:如果u.getuserName == 本身的用戶名 并且密碼一致,就認(rèn)為登陸成功
//獲取到每一個(gè)用戶信息
if(u.getUsername().equals(username) && u.getPassword().equals(password)){
//修改標(biāo)記
flag = true ;
break ;
}
}
return flag ;
}
//注冊
@Override
public void regist(User user) {
//創(chuàng)建集合對象:(一般情況:沒有告訴是用什么集合:默認(rèn)是:ArrayList)
//ArrayList array = new ArrayList() ;
array.add(user) ;
}
}
/**
* 用戶的操作接口,里面提供兩個(gè)功能:登陸,注冊
* */
public interface UserDao {
/**
* 用戶登陸功能
* @param username
* 用戶名
* @param password
* 用戶密碼
* @return
* 返回值表示的意思用戶登陸是否成功
*
* */
public abstract boolean isLogin(String username,String password) ;
/**
*
* 用戶注冊功能
* @param user
* 需要注冊的用戶
* */
public abstract void regist(User user) ;
}
/**
* 猜數(shù)字小游戲
* */
public class GuessNumberGame {
//構(gòu)造方法私有
private GuessNumberGame(){
}
//靜態(tài)方法
public static void start(){
//產(chǎn)生一個(gè)隨機(jī)數(shù)
int number = (int) (Math.random()*100 +1) ;
//定義統(tǒng)計(jì)變量:
int count = 0 ;
//為了多次循環(huán)
while(true){
//創(chuàng)建鍵盤錄入對象
Scanner sc = new Scanner(System.in) ;
System.out.println("請輸入一個(gè)數(shù)字:");
int guessNumber =sc.nextInt() ;
//統(tǒng)計(jì)變量++
count ++ ;
//判斷
if(guessNumber > number){
System.out.println("你要猜的數(shù)據(jù):"+guessNumber +"大了");
}else if(guessNumber
System.out.println("你要猜的數(shù)據(jù):"+guessNumber+"小了了");
}else{
System.out.println("恭喜您,"+count+"次猜中了");
break ;
}
}
}
}
/**
* 登陸注冊案例的測試類
* */
public class UserTest {
public static void main(String[] args) {
//為了能夠回來,寫一個(gè)while循環(huán)
while(true){
//給出選擇界面,歡迎界面
System.out.println("----------------------------歡迎光臨----------------------------------");
System.out.println("1 登陸");
System.out.println("2 注冊");
System.out.println("3 退出");
//創(chuàng)建鍵盤錄入對象
Scanner sc = new Scanner(System.in) ;
//為了讓同一個(gè)對象調(diào)用不同的功能:登陸和注冊,將該對象定義swtich語句的外面
UserDao ud = new UserDaoImpl() ;
//錄入并接收數(shù)據(jù)
System.out.println("請輸入您的選擇:");
String choiceString = sc.nextLine() ;
//,swtich語句后面的表達(dá)式用String
switch(choiceString){
case"1" :
//登陸界面
System.out.println("--------------------登陸界面-----------------------------");
System.out.println("請輸入用戶名:");
String username = sc.nextLine() ;
System.out.println("請輸入密碼:");
String password = sc.nextLine() ;
boolean flag = ud.isLogin(username, password) ;
if(flag){
System.out.println("登陸成功,可以開始玩游戲了嗎?");
System.out.println("玩游戲嗎?y/n");
while(true){
String resultString = sc.nextLine() ;
if(resultString.equalsIgnoreCase("y")){
//開始玩游戲了
GuessNumberGame.start() ;
System.out.println("還玩嗎?y/n");
}else{
break ;
}
}
System.out.println("謝謝使用,歡迎下次再來....");
//如果一個(gè)while循環(huán)中嵌套了switch語句,那么break只表示結(jié)束swtich語句,并不能結(jié)束掉while循環(huán)
//結(jié)束while循環(huán),應(yīng)該使用System里面exit(0);終止Jvm
System.exit(0) ;
}else{
System.out.println("用戶名或者密碼輸入錯(cuò)誤,請重新登陸");
}
break ;
case "2":
//注冊界面
System.out.println("--------------------注冊界面-----------------------------");
System.out.println("請輸入用戶名:");
String newUserName = sc.nextLine() ;
System.out.println("請輸入密碼:");
String newPassword = sc.nextLine() ;
//將用戶信息封裝到User中
User user = new User() ;
user.setUsername(newUserName) ;
user.setPassword(newPassword) ;
ud.regist(user) ;
System.out.println("注冊成功");
break ;
case "3" :
default :
System.out.println("謝謝使用,下次再來!");
System.exit(0) ;
break ;
}
}
}
}思考:在登錄注冊測試類中,當(dāng)while語句中含有switch語句時(shí),break語句只能跳出switch語句,應(yīng)該使用System.in跳出整個(gè)程序.
總結(jié)
以上是生活随笔為你收集整理的java学生管理系统登录注册_Java程序---学生管理系统的登录和注册的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你必须要懂的APK瘦身知识
- 下一篇: java信息管理系统总结_java实现科