欢迎光临散文网 会员登陆 & 注册

Java:购物综合案例,收银系统,查看所有顾客,所有商品 ,用户购买商品 ,单个顾客信息

2020-03-12 23:18 作者:诗书画唱  | 我要投稿

/*购物综合案例:

收银系统:功能1.查看所有顾客 2.查看所有商品 3.用户购买商品 4.查看单个顾客信息(含常见错误分析讲解图片)*/


package a;


import java.util.ArrayList;

import java.util.HashSet;

import java.util.Iterator;

import java.util.Scanner;


//顾客类:

class guke {

HashSet<shangpin> h = new HashSet<shangpin>();// 是顾客的商品列表

int yonghudeID;

String yonghuname;


// 在构造方法中对顾客的属性进行赋值,商品不能赋值,因为还没有买商品:

public guke(int iD, String name) {

yonghudeID = iD;

this.yonghuname = name;

}


// 购买商品的方法:

public void mai(int shurudeshangpinbianhao) {

h.add(lizi.shangpinshuzu.get(shurudeshangpinbianhao - 1));

}


//

@Override

public String toString() {

return "用户的ID:" + yonghudeID + ", 用户的名字:" + yonghuname;

}

}


public class lizi {

// 顾客的集合:

static ArrayList<guke> gukeshuzu = new ArrayList<guke>();


// 定义商品集合:

static ArrayList<shangpin> shangpinshuzu = new ArrayList<shangpin>();


public static void main(String[] args) {


gukeshuzu.add(new guke(1, "张三"));

gukeshuzu.add(new guke(2, "李四"));

gukeshuzu.add(new guke(3, "王五"));

shangpinshuzu.add(new shangpin(1, "苹果", 3.5));

shangpinshuzu.add(new shangpin(2, "香蕉", 2.5));

shangpinshuzu.add(new shangpin(3, "橘子", 4.5));

shangpinshuzu.add(new shangpin(4, "巧克力", 5.5));

shangpinshuzu.add(new shangpin(5, "果汁", 6.5));

System.out.println("-------诗书画唱收银系统--------");

while (true) {

System.out.println("请选择你要执行的功能:1.查看所有顾客   2.查看所有商品  "

+ "3.用户购买商品  4.查询单个顾客的购买信息");

Scanner s = new Scanner(System.in);

int num = s.nextInt();

if (num == 1) {

// 查询所有顾客:

for (int i = 0; i < gukeshuzu.size(); i++) {

System.out.println(gukeshuzu.get(i));

}

} else if (num == 2) {

// 查询所有商品:

Iterator i = shangpinshuzu.iterator();

while (i.hasNext()) {

shangpin sh = (shangpin) i.next();

sh.say();

}

} else if (num == 3) {

// 购物:

System.out.println("请输入用户的编号");

int shurudeyonghubianhao = s.nextInt();


for (int i = 0; i < gukeshuzu.size(); i++) {


if (shurudeyonghubianhao == gukeshuzu.get(i).yonghudeID) {


while (true) {

System.out.println(gukeshuzu.get(i).yonghuname

+ ",请选择你要购买的商品的编号");

int shurudeshangpinbianhao = s.nextInt();

gukeshuzu.get(i).mai(shurudeshangpinbianhao);

// mai(shurudeshangpinbianhao)是定义买的方法进行购买商品

System.out.println("购买成功,是否继续购买?1.继续  2.不买了");

int sss = s.nextInt();

if (sss == 2) {

break;

}

}

}

}


} else if (num == 4) {

// 查询用户的商品:

// 查询所有顾客:

System.out.println("请输入你要查询的顾客的编号");

int biaohao = s.nextInt();

for (int i = 0; i < gukeshuzu.size(); i++) {

if (gukeshuzu.get(i).yonghudeID == biaohao) {

if (gukeshuzu.get(i).h.isEmpty()) {

System.out.println("你还没有购买商品");

} else {

Iterator j = gukeshuzu.get(i).h.iterator();

while (j.hasNext()) {

shangpin w = (shangpin) j.next();

w.say();

}

}

}

}

}

}

}

}


// 商品类

class shangpin {

int bianhao;

String name;

double price;


// 构造方法中对其赋值:

public shangpin(int bianhao, String name, double price) {

this.bianhao = bianhao;

this.name = name;

this.price = price;

}


// 商品介绍:

public void say() {

System.out.println("编号:" + this.bianhao +

"\t名称:" + this.name + "\t价格"

+ this.price);

}

}









Java:购物综合案例,收银系统,查看所有顾客,所有商品 ,用户购买商品 ,单个顾客信息的评论 (共 条)

分享到微博请遵守国家法律