/**
* 2017年10月6日 下午11:33:03
* mischen
*
* 使用集合實現註冊登陸功能,
第一步: 提示使用者選擇功能, A(註冊) B(登陸) 。 要求: 功能選擇 的時候要忽略大小寫。
註冊:
1. 提示使用者輸入註冊的賬號(數字)與密碼,如果輸入的id號已經存在集合中,提示使用者重新輸入。 註冊完畢之後,把集合中的所有使用者資訊列印出來。(使用:toArrry()方法)
登陸:
提示使用者輸入登陸的賬號與密碼,如果賬號與密碼這個使用者已經存在集合中,那麼登陸成功,否則登陸失敗。
*/
package com.mischen.cn;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Scanner;
class User{
int id;
String password;
public User(int id, String password) {
this.id = id;
this.password = password;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public boolean equals(Object object){
User user=(User) object;
return this.id==user.id;
}
//重寫toString()方法,不然輸出的是object
@Override
public String toString() {
return "User [id=" + id + ", password=" + password + "]";
}
}
/**
* @author mischen
* 2017年10月6日 下午11:33:03
*/
public class Demo3 {
//宣告靜態常量,公共變數
static Scanner sc=new Scanner(System.in);//從鍵盤獲取輸入資訊
static Collection users=new ArrayList();//使用該集合儲存所有使用者資訊
/**
* void
* 下午11:33:03
*/
public static void main(String[] args) {
while(true){
System.out.println("請選擇功能 A(註冊) B(登陸)");
String option=sc.next();
if("a".equalsIgnoreCase(option)){
regis();
}else if("b".equalsIgnoreCase(option)){
login();
}else{
System.out.println("您選擇有誤,請重新選擇");
}
}
}
/**
* 實現使用者的登陸功能
* 上午12:48:06
*/
public static void login() {
System.out.println("請輸入賬號:");
int id=sc.nextInt();
System.out.println("請輸入密碼:");
String password=sc.next();
boolean isLogin=false;
Iterator iterator=users.iterator();
while(iterator.hasNext()){
User user=(User) iterator.next();
if(user.id==id&&user.password.equals(password)){
isLogin=true;
}
}
if(isLogin){
System.out.println("歡迎"+id+"登陸!");
}else{
System.out.println("使用者名稱或密碼錯誤,請重新輸入!");
}
}
/**
* 實現使用者的註冊功能
* 上午12:47:26
*/
public static void regis() {
User user=null;
while(true){
System.out.println("請輸入賬號:賬號必須全是數字");
int id=sc.nextInt();
user=new User(id,null);
if(users.contains(user)){
System.out.println("該賬戶已經存在,請重新輸入。。");
}else{
break;
}
}
System.out.println("請輸入密碼:");
String password=sc.next();
user.setPassword(password);
users.add(user);
System.out.println("恭喜你,註冊成功!");
System.out.println("當前註冊的人員:"+users);
}
}