1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java简单实现购物车添加 查询 修改 结算商品程序

java简单实现购物车添加 查询 修改 结算商品程序

时间:2022-07-22 19:51:12

相关推荐

java简单实现购物车添加 查询 修改 结算商品程序

话不多说,直接上代码~~~~~

public class Shopping{

public static void main(String[] args) {

//定义商品类,用于后期创建商品对象

//定义购物车对象,使用一个数组对象表示

Goods[] shopCar = new Goods[100];

//3,搭建操作架构

while (true) {

System.out.println("请您选择如下命令进行操作: ");

System.out.println("添加商品到购物车: add");

System.out.println("查询商品到购物车: query");

System.out.println("修改商品购买数量: update");

System.out.println("结算购买商品的金额: pay");

Scanner sc = new Scanner(System.in);

System.out.println("请您输入命令:");

String command = sc.next();

switch (command){

case "add"://添加商品到购物车

addGoods(shopCar,sc);

break;

case "query"://查询购物车商品展示

queryGoods(shopCar);

break;

case "update"://修改商品购买数量

updateGoods(shopCar,sc);

break;

case "pay"://结算金额

payGoods(shopCar);

break;

default:

System.out.println("没有该功能");

}

}

}

private static void payGoods(Goods[] shopCar) {

queryGoods(shopCar);

//定义一个求和变量累加金额

double money = 0;

//遍历购物车数组中的全部商品对象,累加单价*数量

for (int i = 0; i < shopCar.length; i++) {

Goods g = shopCar[i];

if (g != null){

money+= (g.buyNumber*g.price);

}else {

break;

}

}

System.out.println("订单总金额:"+money);

}

private static void updateGoods(Goods[] shopCar,Scanner sc) {

//让用户输入要修改的商品id,

while (true) {

System.out.println("请输入要修改的商品id");

int id = sc.nextInt();

Goods g = getGoodsByID(shopCar, id);

if (g == null) {

//没有该商品

System.out.println("对不起,没有购买商品!");

} else {

//说明存在商品对象

System.out.println("请您输入:" + g.name + "商品最新购买数量:");

int buyNumber = sc.nextInt();

g.buyNumber = buyNumber;

System.out.println("修改完成!");

queryGoods(shopCar);

break;

}

}

}

public static Goods getGoodsByID(Goods[] shopCar,int id) {

for (int i = 0; i < shopCar.length; i++) {

Goods g = shopCar[i];

if (g != null) {

if (g.id == id){

return g;}

} else {

return null;//都没有找到

}

}

return null;

}

private static void queryGoods(Goods[] shopCar) {

System.out.println("==========查询购物车信息如下==========");

System.out.println("编号\t\t名称\t\t\t价格\t\t\t购买数量");

for (int i = 0; i < shopCar.length; i++) {

Goods g = shopCar[i];

if (g != null){

//展示这个商品对象

System.out.println(g.id+"\t\t"+g.name+"\t\t\t"+g.price+"\t\t\t"+g.buyNumber);

}else {

//遍历结束

break;

}

}

}

private static void addGoods(Goods[] shopCar,Scanner sc) {

//1,录入用户输入购买的信息

System.out.println("请您输入购买商品的编号(不重复): ");

int id = sc.nextInt();

System.out.println("请您输入购买商品的名称: ");

String name = sc.next();

System.out.println("请您输入购买商品的数量: ");

int buyNumber = sc.nextInt();

System.out.println("请您输入购买商品的价格: ");

double price = sc.nextDouble();

//2,把这个购买商品的信息封装成一个商品信息

Goods g = new Goods();

g.id = id;

g.name = name;

g.buyNumber = buyNumber;

g.price = price;

//3,把商品对象添加到购物车中

for (int i = 0; i < shopCar.length; i++) {

if (shopCar[i] == null){

//说明此位置没有元素存入,把我们新买的商品添加到此处即可

shopCar[i] = g;

break;

}

}

System.out.println("您的商品:"+g.name+"添加到购物车完成!");

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。