欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)現(xiàn)超市會(huì)員管理系統(tǒng)

 更新時(shí)間:2022年03月18日 16:19:58   作者:YaJeanZhang_  
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)超市會(huì)員管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Java實(shí)現(xiàn)超市會(huì)員管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

要求:借助集合框架及實(shí)用類實(shí)現(xiàn)該系統(tǒng)

1、積分累計(jì)
2、積分兌換
3、查詢剩余積分
4、修改密碼
5、開卡
6、退出

執(zhí)行結(jié)果:

開卡、積分累計(jì)部分:

兌換積分、查詢剩余積分部分:

修改密碼、使用新密碼查詢部分:

退出部分:

實(shí)現(xiàn)思路:

1、創(chuàng)建會(huì)員用戶類:

  • 用戶名、密碼、會(huì)員卡號(hào)(隨機(jī)生成)、注冊(cè)日期、積分

2、創(chuàng)建超市業(yè)務(wù)類:

  • 菜單展示
  • 業(yè)務(wù)選擇 積分存取方法、積分兌換方法、積分查詢方法、修改密碼方法、開卡方法
  • 判斷集合中是否存在查詢?cè)胤椒ǎㄓ捎谄渌椒ㄖ芯霈F(xiàn)此方法中的代碼,即將其提取出來另列為一個(gè)方法)

3、測(cè)試類

源碼:

會(huì)員用戶類

package cn.zyq.Aug0203;

/**
?* 會(huì)員用戶類
?* @author admin
?*
?*/
public class Member {
?? ?//姓名
?? ?private String name;
?? ?//密碼
?? ?private String pwd;
?? ?//會(huì)員卡號(hào)
?? ?private String id;
?? ?//注冊(cè)日期
?? ?private String registData;
?? ?//積分
?? ?private int score;
?? ?
?? ?public Member() {
?? ?}
?? ?
?? ?public Member(String name, String pwd, String id, String registData, int score) {
?? ??? ?super();
?? ??? ?this.name = name;
?? ??? ?this.pwd = pwd;
?? ??? ?this.id = id;
?? ??? ?this.registData = registData;
?? ??? ?this.score = score;
?? ?}

?? ?public String getName() {
?? ??? ?return name;
?? ?}

?? ?public void setName(String name) {
?? ??? ?this.name = name;
?? ?}

?? ?public String getPwd() {
?? ??? ?return pwd;
?? ?}

?? ?public void setPwd(String pwd) {
?? ??? ?this.pwd = pwd;
?? ?}

?? ?public String getId() {
?? ??? ?return id;
?? ?}

?? ?public void setId(String id) {
?? ??? ?this.id = id;
?? ?}

?? ?public String getRegistData() {
?? ??? ?return registData;
?? ?}

?? ?public void setRegistData(String registData) {
?? ??? ?this.registData = registData;
?? ?}

?? ?public int getScore() {
?? ??? ?return score;
?? ?}

?? ?public void setScore(int score) {
?? ??? ?this.score = score;
?? ?}?? ?
}

超市業(yè)務(wù)類

package cn.zyq.Aug0203;

/**
?* 超市業(yè)務(wù)類
?*/
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

public class Business {
?? ?Scanner sc = new Scanner(System.in);
?? ?List<Member> list = new ArrayList<Member>();
?? ?
?? ?/**
?? ? * 用戶可選擇菜單
?? ? */
?? ?public void init() {
?? ??? ?System.out.println("\n--------------------歡迎進(jìn)入會(huì)員管理系統(tǒng)--------------------\n");
?? ??? ?System.out.println("1.積分累計(jì) ? ? ?2.積分兌換 ? ? ?3.查詢剩余積分 ? ? ?4.修改密碼 ? ? ?5.開卡 ? ? ? ? ? ?6.退出");
?? ??? ?System.out.println("\n-------------------------------------------------------");
?? ??? ?System.out.println();
?? ??? ?System.out.print("請(qǐng)選擇您要進(jìn)行的操作:");
?? ??? ?choose(sc.nextInt());
?? ?}
?? ?
?? ?/**
?? ? * 用戶選擇的業(yè)務(wù)
?? ? * ?@param num
?? ? */
?? ?public void choose(int num) {
?? ??? ?switch (num) {
?? ??? ?case 1:
?? ??? ??? ?saveScore();
?? ??? ??? ?break;
?? ??? ?case 2:
?? ??? ??? ?useScore();
?? ??? ??? ?break;
?? ??? ?case 3:
?? ??? ??? ?search();
?? ??? ??? ?break;
?? ??? ?case 4:
?? ??? ??? ?updatePwd();
?? ??? ??? ?break;
?? ??? ?case 5:
?? ??? ??? ?regist();
?? ??? ??? ?break;
?? ??? ?case 6:
?? ??? ??? ?System.out.println("歡迎下次光臨!");
?? ??? ??? ?System.exit(0);
?? ??? ??? ?break;
?? ??? ?}
?? ??? ?init();
?? ?}
?? ?
?? ?/**
?? ? * 積分積累
?? ? */
?? ?public void saveScore() {
?? ??? ?
?? ??? ?Member m = check();
?? ??? ?if(m!=null) {
?? ??? ??? ?System.out.print("請(qǐng)輸入您消費(fèi)的金額(一元一積分):");
?? ??? ??? ?int score = sc.nextInt();
?? ??? ??? ?m.setScore(m.getScore()+score);
?? ??? ??? ?System.out.println("積分增加成功,目前您的積分為:"+m.getScore());
?? ??? ??? ?System.out.println("積分累計(jì)成功!");
?? ??? ?}else {
?? ??? ??? ?System.out.println("積分累計(jì)失敗,您輸入的信息有誤!");
?? ??? ?}
?? ?}

?? ?
?? ?/**
?? ? * 積分兌換
?? ? */
?? ?public void useScore() {
?? ??? ?
?? ??? ?Member m = check();
?? ??? ?if(m!=null) {
?? ??? ??? ?System.out.print("請(qǐng)輸入您需要兌換使用的積分(100積分抵用1元,不足100的積分不做抵用):");
?? ??? ??? ?int score = sc.nextInt();
?? ??? ??? ?if(m.getScore()>=100 && score>=100 && score<=m.getScore()) {
?? ??? ??? ??? ?m.setScore(m.getScore()-score);
?? ??? ??? ??? ?System.out.println("您本次消費(fèi)抵用金額為:"+score/100);
?? ??? ??? ??? ?System.out.println("兌換積分成功!");
?? ??? ??? ?}else {
?? ??? ??? ??? ?System.out.println("兌換積分失敗,賬戶積分不足或需要兌換積分大于剩余積分!");
?? ??? ??? ?}
?? ??? ?}else {
?? ??? ??? ?System.out.println("賬號(hào)信息不匹配,無法兌換積分!");
?? ??? ?}
?? ?}
?? ?
?? ?/**
?? ? * 查詢剩余積分
?? ? */
?? ?public void search() {
?? ??? ?
?? ??? ?Member m = check();
?? ??? ?if(m!=null) {
?? ??? ??? ?System.out.println("姓名\t會(huì)員卡號(hào)\t剩余積分\t開卡日期");
?? ??? ??? ?System.out.println(m.getName()+"\t"+m.getId()+"\t"+m.getScore()+"\t"+m.getRegistData());
?? ??? ?}else {
?? ??? ??? ?System.out.println("輸入的賬號(hào)信息不匹配!");
?? ??? ?}
?? ?}
?? ?
?? ?/**
?? ? * 修改密碼
?? ? */
?? ?public void updatePwd() {
?? ??? ?
?? ??? ?Member m = check();
?? ??? ?if(m!=null) {
?? ??? ??? ?System.out.print("請(qǐng)輸入您的新密碼:");
?? ??? ??? ?String pwd = sc.next();
?? ??? ??? ?
?? ??? ??? ?//重新設(shè)置密碼
?? ??? ??? ?m.setPwd(pwd);
?? ??? ??? ?System.out.println("密碼修改成功!");
?? ??? ?}else {
?? ??? ??? ?System.out.println("輸入的賬號(hào)信息不匹配,無法進(jìn)行此業(yè)務(wù)!");
?? ??? ?}
?? ?}
?? ?
?? ?
?? ?/**
?? ? * 積分兌換
?? ? */
?? ?public void regist() {
?? ??? ?System.out.print("歡迎使用本超市會(huì)員卡,請(qǐng)輸入您的姓名:");
?? ??? ?String name = sc.next();
?? ??? ?System.out.print("請(qǐng)?jiān)O(shè)置您的密碼(要求密碼長度大于6):");
?? ??? ?String pwd = sc.next();
?? ??? ?//判斷密碼是否合法
?? ??? ?boolean flag = false;
?? ??? ?while(!flag) {
?? ??? ??? ?if(pwd.length()<6) {
?? ??? ??? ??? ?flag = false;
?? ??? ??? ??? ?System.out.print("密碼長度小于6位,請(qǐng)重新輸入密碼:");
?? ??? ??? ??? ?pwd = sc.next();
?? ??? ??? ?}
?? ??? ??? ?else {
?? ??? ??? ??? ?flag = true;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?
?? ??? ?//生成一個(gè)八位數(shù)的隨機(jī)會(huì)員卡號(hào)
?? ??? ?Random random = new Random();
?? ??? ?int rand = random.nextInt(999999);
?? ??? ?String id = String.valueOf(rand);
?? ??? ?//判斷會(huì)員卡是否已存在
?? ??? ?for(Member m:list) {
?? ??? ??? ?if(m.getId()==id) {
?? ??? ??? ??? ?rand = random.nextInt(99999999);
?? ??? ??? ??? ?id = String.valueOf(rand);
?? ??? ??? ?}
?? ??? ?}
?? ??? ?
?? ??? ?//注冊(cè)日期
?? ??? ?Date date = new Date();
?? ??? ?SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd :hh:mm:ss");
?? ??? ?String registData = dateFormat.format(date);
?? ??? ?
?? ??? ?//開卡送積分100;
?? ??? ?int score = 100;
?? ??? ?//將用戶記錄添加到列表
?? ??? ?list.add(new Member(name, pwd, id, registData, score));
?? ??? ?System.out.println("恭喜你成為本超市會(huì)員,系統(tǒng)贈(zèng)送您100積分,您的會(huì)員卡號(hào)為:"+id+",請(qǐng)牢記卡號(hào)和密碼!");
?? ??? ?
?? ?}
?? ?
?? ?/**
?? ? * 信息檢測(cè),list中是否存有指定用戶信息
?? ? */
?? ?public Member check() {
?? ??? ?System.out.print("請(qǐng)輸入您的會(huì)員卡號(hào):");
?? ??? ?String id = sc.next();
?? ??? ?System.out.print("請(qǐng)輸入您的密碼:");
?? ??? ?String pwd = sc.next();
?? ??? ?for(Member m:list) {
?? ??? ??? ?if(m.getId().equals(id) && m.getPwd().equals(pwd)) {
?? ??? ??? ??? ?return m;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?return null;
?? ?}
}

測(cè)試類

package cn.zyq.Aug0203;

/**
?* 測(cè)試類
?* @author admin
?*
?*/
public class Test {
?? ?public static void main(String[] args) {
?? ??? ?Business business = new Business();
?? ??? ?business.init();
?? ?}
}

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot寶塔簡(jiǎn)單部署的實(shí)現(xiàn)示例

    springboot寶塔簡(jiǎn)單部署的實(shí)現(xiàn)示例

    通過使用Spring Boot,可以快速構(gòu)建出高效、可擴(kuò)展的應(yīng)用程序,而寶塔面板則提供了簡(jiǎn)單易用的網(wǎng)站管理和維護(hù)工具,本文將詳細(xì)介紹如何將Spring Boot應(yīng)用程序與寶塔面板進(jìn)行集成,實(shí)現(xiàn)自動(dòng)化部署、配置管理等操作
    2023-11-11
  • Java基于自定義類加載器實(shí)現(xiàn)熱部署過程解析

    Java基于自定義類加載器實(shí)現(xiàn)熱部署過程解析

    這篇文章主要介紹了Java基于自定義類加載器實(shí)現(xiàn)熱部署過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • java 使用poi 導(dǎo)入Excel數(shù)據(jù)到數(shù)據(jù)庫的步驟

    java 使用poi 導(dǎo)入Excel數(shù)據(jù)到數(shù)據(jù)庫的步驟

    這篇文章主要介紹了java 使用poi 導(dǎo)入Excel 數(shù)據(jù)到數(shù)據(jù)庫的步驟,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12
  • Java實(shí)現(xiàn)將PPT轉(zhuǎn)為OFD過程詳解

    Java實(shí)現(xiàn)將PPT轉(zhuǎn)為OFD過程詳解

    本文將通過Java后端程序代碼展示如何實(shí)現(xiàn)將PPT幻燈片轉(zhuǎn)成OFD格式,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定的幫助,需要的可以參考一下
    2022-01-01
  • 簡(jiǎn)單談?wù)凧ava中的方法和方法重載

    簡(jiǎn)單談?wù)凧ava中的方法和方法重載

    下面小編就為大家?guī)硪黄?jiǎn)單談?wù)凧ava中的方法和方法重載。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • IDEA搭建dubbo項(xiàng)目的過程及存在的問題

    IDEA搭建dubbo項(xiàng)目的過程及存在的問題

    這篇文章主要介紹了IDEA搭建dubbo項(xiàng)目及存在的問題小結(jié),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Java設(shè)計(jì)模式之抽象工廠模式簡(jiǎn)析

    Java設(shè)計(jì)模式之抽象工廠模式簡(jiǎn)析

    這篇文章主要介紹了Java設(shè)計(jì)模式之抽象工廠模式簡(jiǎn)析, 抽象工廠模式是工廠方法模式的升級(jí)版本,他用來創(chuàng)建一組相關(guān)或者相互依賴的對(duì)象,他與工廠方法模式的區(qū)別就在于,工廠方法模式針對(duì)的是一個(gè)產(chǎn)品等級(jí)結(jié)構(gòu),需要的朋友可以參考下
    2023-12-12
  • SpringCloud gateway+zookeeper實(shí)現(xiàn)網(wǎng)關(guān)路由的詳細(xì)搭建

    SpringCloud gateway+zookeeper實(shí)現(xiàn)網(wǎng)關(guān)路由的詳細(xì)搭建

    這篇文章主要介紹了SpringCloud gateway+zookeeper實(shí)現(xiàn)網(wǎng)關(guān)路由,本文通過圖文實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • 微服務(wù)領(lǐng)域Spring Boot自動(dòng)伸縮的實(shí)現(xiàn)方法

    微服務(wù)領(lǐng)域Spring Boot自動(dòng)伸縮的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于微服務(wù)領(lǐng)域Spring Boot自動(dòng)伸縮的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • Java并發(fā)編程中的生產(chǎn)者與消費(fèi)者模型簡(jiǎn)述

    Java并發(fā)編程中的生產(chǎn)者與消費(fèi)者模型簡(jiǎn)述

    這篇文章主要介紹了Java并發(fā)編程中的生產(chǎn)者與消費(fèi)者模型簡(jiǎn)述,多線程并發(fā)是Java編程中最終要的部分之一,需要的朋友可以參考下
    2015-07-07

最新評(píng)論