日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JAVA實現用戶抽獎功能(附完整代碼)

瀏覽:51日期:2022-08-20 14:15:05
需求分析

1)實現三個基本功能:登錄、注冊、抽獎。

2)登錄:用戶輸入賬號密碼進行登錄,輸入賬號后會匹配已注冊的用戶,若輸入用戶不存在則退出,密碼有三次輸入機會,登錄成功后主界面會顯示已登錄用戶的賬號信息。

3)注冊:用戶首先輸入賬號名稱,系統查詢此名稱是否存在,如存在則請求用戶換一個名稱,否則進入密碼輸入,密碼要求6位數字字符串,注冊成功后,系統隨機分配一個與已有用戶不重復的四位數字id編號。

4)抽獎:功能實現前提:需有用戶處于登錄狀態。該前提滿足時,系統從已存在用戶中隨機抽取5位不同的用戶標記為幸運用戶,并判斷正在登錄狀態的用戶是否被抽中。

5)數據存儲:采用文件系統,導入java.io.*包,

6)數據結構:登錄用戶信息保存于ArrayList,幸運用戶編號和id保存于長度為5的HasMap<String id,String name> 其中id為Key,name為Value。

實現結果

1)登錄:

JAVA實現用戶抽獎功能(附完整代碼)

2)注冊:

JAVA實現用戶抽獎功能(附完整代碼)

3)抽獎:

JAVA實現用戶抽獎功能(附完整代碼)

注意事項

運行代碼之前務必在user.txt中創建五個以上的用戶。

完整代碼

import java.util.Scanner;import java.util.ArrayList;import java.io.*;import java.util.StringTokenizer;public class Dos { static boolean logined=false; public static void main(String[] args) { User user=new User(); int k=0; while( (k=Main(user))>=1&&k<5){ switch (k){ case 1: System.out.print((k=user.login(user))==-1?'此用戶不存在!n':''); System.out.print((k==-2)?'===<<警告>>用戶:['+user.userName+']已處于登錄狀態,無需重復登錄!n':''); break; case 2: user.regist(); break; case 3: user.getLuckly(); break; default:System.exit(0); } } } static int Main(User user){ System.out.println('**********************************************'); System.out.println('********************主菜單********************'); System.out.println('**********************************************'); System.out.println('****** <1> 登 錄 ******'); System.out.println('****** <2> 注 冊 ******'); System.out.println('****** <3> 抽 獎 ******'); System.out.println('****** <4> 退 出 ******'); System.out.println('**********************************************'); System.out.println('=============================================='); System.out.println(logined ? '-[已登錄]- (1)用戶名:'+user.userName+' (2)用戶賬號:'+user.userId:'-[未登錄]- (1)用戶名:NaN (2)用戶賬號:NaN'); System.out.println('=============================================='); System.out.print('###===>請輸入您的選擇:'); return (new Scanner(System.in)).nextInt(); }}public class User{ String userName,userId,userPwd; public User(){} public User(String userName, String userId, String userPwd) { this.userName = userName; this.userId = userId; this.userPwd = userPwd; } public String getUserName() { return userName; } public void setUserName(String userName) { if(!userName.equals('')) { ArrayList<String> temp; this.userId=(temp=(new operatorFile(this.userName = userName)).getUserMess(0)).get(1); this.userPwd=temp.get(2); } } public String getUserId() { return userId; } public String setUserId() { String userId=''; while((new operatorFile(userId=String.valueOf ((int) (Math.random()*9000+1000)))).getUserMess(1).size()>0){ } return (this.userId = userId); } public String getUserPwd() { return userPwd; } public int login(User u) { int inputTimes=3; Scanner scanner=new Scanner(System.in); operatorFile getUserMessage=new operatorFile(); System.out.print('======>請輸入您的用戶名:'); String uName=''; getUserMessage.setUser(uName=scanner.nextLine()); ArrayList<String> userMess=getUserMessage.getUserMess(0); if(userMess.size()<1) return -1;//返回-1表示用戶不存在 if (uName.equals(userName)) return -2;//返回-2表示用戶重復登錄 System.out.print('======>請輸入您的登錄密碼:'); while(!scanner.next().equals(userMess.get(2))&&inputTimes>0) System.out.print('===>密碼輸入錯誤!'+((--inputTimes)>0?'您還剩'+inputTimes+'次機會!':'三次機會已經用完了!輸入任意退出')); System.out.println(inputTimes>0?'==>登錄成功!您本次輸入密碼'+(4-inputTimes)+'次!':'==>登錄失敗!'); setUserName(inputTimes>0?uName:''); Dos.logined=inputTimes>0?true:false; return 0; } public void regist() { User u=new User(); Scanner scanner=new Scanner(System.in); System.out.print('===>請輸入新的用戶名:'); String name; while(new operatorFile(name=scanner.nextLine()).getUserMess(0).size() > 0) System.out.print('已存在此用戶,注冊失敗!n===>請重新輸入新的用戶名:'); System.out.print('======>請設置您的(六位數字)登錄密碼:'); String regex = '[0-9]{6}', pwd; while (!(pwd = scanner.nextLine()).matches(regex)) System.out.print('==>密碼格式不正確,請重新設置您的(六位數字)登錄密碼:'); System.out.println('已為用戶: '+(u.userName=name)+' 生成唯一ID: '+(u.userPwd=pwd)); (new operatorFile()).writeUserMess(u); System.out.println('=======>注冊成功!'); } public static HashMap<String,String> lucklyUsers=new HashMap<>(); public void getLuckly() { if (!Dos.logined) { System.out.println('===>警告:沒有用戶登錄,無法抽獎!'); return ; } while(lucklyUsers.size()<5) { String id=''; ArrayList<String> u; while((u=(new operatorFile(id=String.valueOf ((int) (Math.random()*9000+1000)))).getUserMess(1)).size()<1){ } lucklyUsers.put(u.get(1),u.get(0)); } Iterator iterator=lucklyUsers.entrySet().iterator(); int no=1; boolean LUCKLY=false; System.out.println('====>恭喜以下用戶獲得幸運稱號:'); while(iterator.hasNext()){ Map.Entry entry=(Map.Entry) iterator.next(); System.out.println('幸運用戶['+(no++)+'] 用戶名:'+entry.getValue()+' 用戶編號:'+entry.getKey()); LUCKLY = entry.getKey().equals(this.userId) ? true : LUCKLY; } System.out.println(LUCKLY?'=========>恭喜您在本次抽獎中獲得幸運稱號!':'=========>很遺憾,今日您未獲獎 !-_-!'); } public String toString(){ return this.userName+' '+this.userId+' '+this.userPwd; }}public class operatorFile { String user; public void setUser(String user) { this.user = user; } public operatorFile(String user) { this.user = user; } public operatorFile() { } public ArrayList<String> getUserMess(int index){ ArrayList<String> temp=new ArrayList<String>(); File file=new File('user.txt'); String line=''; try{ BufferedReader br=new BufferedReader(new FileReader(file)); while ((line = br.readLine())!=null && line!='n'){ temp.clear(); StringTokenizer sk=new StringTokenizer(line); while (sk.hasMoreTokens()) { temp.add(sk.nextToken()); } if (temp.get(index).equals(this.user)) break; } } catch(IOException e){} return (line==null)?new ArrayList<String>():temp; } public void writeUserMess(User u){ try{ BufferedWriter bw=new BufferedWriter(new FileWriter(new File('user.txt'),true)); bw.write(u.toString()+'n'); bw.close(); } catch (IOException e){ } }}總結

到此這篇關于JAVA實現用戶抽獎功能(附完整代碼)的文章就介紹到這了,更多相關JAVA實現用戶抽獎內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品青草| 亚洲成人一区在线观看| 欧美日韩中文一区二区| 亚州av乱码久久精品蜜桃| 99综合视频| 日韩电影免费网址| 日韩欧美精品综合| 日韩国产一区二区| 电影亚洲精品噜噜在线观看 | 久久亚洲风情| 国模 一区 二区 三区| 美女日韩在线中文字幕| 久久国内精品视频| 日本不卡一区二区三区| 黄毛片在线观看| 国产精品久久久久久久久妇女| 亚洲一级二级| 亚洲成av在线| 91成人精品| 一级成人国产| 国产免费av一区二区三区| 日韩欧美中文| 视频福利一区| 成人羞羞在线观看网站| 亚洲免费网址| 国产午夜久久| 亚洲三级网站| 国产精品久久久久久av公交车| se01亚洲视频 | 欧美精品激情| 亚洲综合专区| 黑人精品一区| 欧美性感美女一区二区| 天堂精品久久久久| 亚洲3区在线| 欧美国产另类| 久久高清精品| 日本不卡视频一二三区| 国产欧洲在线| 激情欧美一区| 蜜臀91精品一区二区三区| 91欧美国产| 亚洲国产专区| 亚洲精品乱码| 成人日韩av| 免费久久久久久久久| 国产福利资源一区| 麻豆精品在线观看| 欧美亚洲国产一区| 欧美亚洲人成在线| 久久久精品网| 日韩一区二区三区精品视频第3页| 欧美成人久久| 欧美综合国产| 国产精品白丝一区二区三区| 久久福利一区| 欧美日韩在线精品一区二区三区激情综合 | 91欧美在线| 欧美影院三区| 国产日韩欧美三区| 99久久夜色精品国产亚洲狼| 国产精品天堂蜜av在线播放| 亚洲免费网址| 国产精品色在线网站| 免费久久99精品国产| av综合电影网站| 亚洲综合二区| 激情综合五月| 性欧美长视频| 精品国产成人| 亚洲欧美在线专区| 久久三级视频| 国产精品2023| 久久激情婷婷| 国产日产一区| 亚洲国产综合在线看不卡| 国产精品视频一区视频二区| 午夜在线视频观看日韩17c| 特黄毛片在线观看| 麻豆亚洲精品| 一区二区三区四区日本视频| 国产成人久久精品一区二区三区| 视频在线观看91| 精品美女视频| 蜜桃视频在线观看一区| 久久国产高清| 黄色精品视频| 日本欧美在线看| 国产一区二区久久久久| 亚洲永久av| 日韩福利在线观看| 亚洲在线电影| 国产成人精品亚洲日本在线观看| 精品久久美女| 日韩精品久久久久久| 国产综合激情| 亚洲四虎影院| 中文字幕免费一区二区| 999国产精品永久免费视频app| 天堂√中文最新版在线| 国产精品伦理久久久久久| 免费看一区二区三区| 久久av网址| 丝袜美腿亚洲一区二区图片| 日韩一区中文| 合欧美一区二区三区| 免费av一区二区三区四区| 成人羞羞视频在线看网址| 99久久婷婷| 国际精品欧美精品| 国产精品成人一区二区网站软件| 精品不卡一区| 日韩成人精品一区二区三区 | 欧美三级网址| 久久gogo国模啪啪裸体| 日韩精品1区| 国产极品嫩模在线观看91精品| 久久精品国产99国产精品| 日韩av有码| 国产日韩欧美三区| 日韩**一区毛片| 亚洲精品日本| 亚洲精品四区| 亚洲三级网址| 日韩欧美在线精品| 日本成人在线网站| 亚洲毛片网站| 亚洲三级网址| 三级欧美在线一区| 久久午夜影视| 日本不卡一区二区三区| 欧美日韩1区2区3区| 精品一二三区| 久久99影视| 精品视频国产| 超级白嫩亚洲国产第一| 99日韩精品| 亚洲黄色在线| 亚洲自啪免费| 日韩欧美2区| 日本亚洲视频在线| 久久国产免费看| 国产精区一区二区| 国产精品成人自拍| 精品免费视频| 91精品一区二区三区综合| 亚洲精品欧洲| 涩涩涩久久久成人精品| 国产精品成人a在线观看| 亚洲一级影院| 狠狠色综合网| 亚洲久久一区| 国产精品第十页| 亚洲成人不卡| 中文国产一区| 日韩久久一区| 精品国产麻豆| 国产精品字幕| 国产日韩综合| 日韩精品一区二区三区中文| 国产欧美自拍| 免费视频一区二区三区在线观看 | 欧美www视频在线观看| 麻豆精品91| 中文字幕亚洲影视| 91精品美女| 午夜一级在线看亚洲| 精品国产亚洲日本| 日韩欧美1区| 日韩专区一卡二卡| 国产精品毛片视频| 日韩精品午夜| 日韩中文字幕无砖| 黑人精品一区| 亚洲精品美女91| 黄在线观看免费网站ktv| 欧美日韩国产一区二区在线观看| 香蕉久久精品| 伊人精品久久| 成人综合一区| 日本 国产 欧美色综合| 久久免费大视频| 老牛影视一区二区三区| 韩国三级一区| 亚洲久久视频| 日本黄色精品| 亚洲欧美日韩国产一区| 国产99久久| 一二三区精品| 亚洲精品**中文毛片| 久久不卡国产精品一区二区| 亚洲精一区二区三区| 91精品成人| 亚洲精品护士| 国产不卡精品| 综合色一区二区| av亚洲一区二区三区| 另类欧美日韩国产在线| 青青草国产成人99久久| 亚洲一区有码|