java购物管理项目主旨

本文介绍了使用Java实现的一个购物管理项目,包括查看、新增、删除商品信息,以及商品排行榜和销售功能。此外,文章还探讨了Java在Android、金融、网站开发、嵌入式和大数据领域的广泛应用。
摘要由CSDN通过智能技术生成

package edu.xcdq.mall;

import java.util.Arrays;

import java.util.Scanner;

/**

  • 商品管理员

*/

public class ArticleManage {

// 创建一个商品集合 (仓库)实例

ArticleSetarticleSet=new ArticleSet();

// 对新建的仓库进行初始化

public void initial(){

// 创建商品

    Article xiaomi11=new Article();

    xiaomi11.setArticle("小米11",50,2999,1);

    Article xiaomi11Pro=new Article();

    xiaomi11Pro.setArticle("小米11专业版",30,3999,2);

    Article xiaomiUltra=new Article();

    xiaomiUltra.setArticle("小米增强版",66,4999,3);

    // 把商品放入到仓库中

    articleSet.articles[0]=xiaomi11;

    articleSet.articles[1]=xiaomi11Pro;

    articleSet.articles[2]=xiaomiUltra;

}

//起始菜单

public void startMenu(){

boolean flag=true;

    do {

System.out.println("*********************");

        System.out.println("1 查看商品信息");

        System.out.println("2 新增商品信息");

        System.out.println("3 删除商品信息");

        System.out.println("4 卖出商品");

        System.out.println("5 商品销售排行榜");

        System.out.println("6 退出系统");

        System.out.println("*********************");

        System.out.println("请输入你要执行的功能编号:");

        Scanner scanner=new Scanner(System.in);

        int gongnengBianhao =scanner.nextInt();

        switch (gongnengBianhao){

case 1:

System.out.println(“查看商品信息”);

                chakan(); // 调用查看商品信息的方法

                break;

            case 2:

System.out.println(“新增商品信息”);

                add();

break;

            case 3:

System.out.println(“删除商品信息”);

                delete();

break;

            case 4:

System.out.println(“卖出商品”);

                sell();

break;

            case 5:

System.out.println(“排行榜”);

                leaderboard();

break;

            case 6:

System.out.println(“退出系统”);

                flag =false ;

break;

            default:

System.out.println(“你输入的功能编号有误”);

break;

        }

}while (flag);

}

//排行榜

public void leaderboard() {

int count =0;//统计原始数组使用的长度

    for (int i =0; i

if (articleSet.articles[i] !=null) {

count++;

        }

}

//根据使用的长度临时新建一个数组,这个数组元素存满

    Article[] newTemp =new Article[count];

    //把旧数组中的元素全部拷贝到新数组中,新数组装满元素

    for (int i =0; i < count; i++) {

newTemp[i] =articleSet.articles[i];

    }

//排序 (冒泡排序)

    for (int i =0; i < newTemp.length -1; i++) {//让所有元素参与排序

        for (int j =0; j < newTemp.length - i -1; j++) {//让当前元素和它后面的元素对比

            if (newTemp[j +1] !=null) {//保证下一个要对比的元素存在

                if (newTemp[j].number < newTemp[j +1].number) {

//两个元素交换位置,需要借助第三方临时变量作存储

                    Article temp = newTemp[j];

                    newTemp[j] = newTemp[j +1];

                    newTemp[j +1] = temp;

                }

}

}

}

//显示名次

    System.out.println("名次:\t 销售数量 \t 商品名称");

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

System.out.println((i +1) +"\t" + newTemp[i].number +"\t" + newTemp[i].name);

    }

}

public void sell() {

System.out.println(“请输入你要卖出的商品的名字”);

    Scanner scanner =new Scanner(System.in);

    String name = scanner.next();

    boolean flag =true;

    for (int i =0; i

        if (articleSet.articles[i] !=null &&articleSet.articles[i].name.equals(name)) {

System.out.println(“请输入要卖出的数量”);

            int maichu = scanner.nextInt();

            if (maichu

                //新库存=旧库存-卖出数量

                articleSet.articles[i].amount =articleSet.articles[i].amount - maichu;

                //新售出=旧售出+卖出数量

                articleSet.articles[i].number =articleSet.articles[i].number + maichu;

                flag =true;

            }else {

flag =false;

                System.out.println("库存不够了");

            }

break; // 找到对应的位置,已经完成了修改,后续的元素直接跳过,中断循环

        }else {

flag =false;

            //System.out.println("你要卖出的商品没找到");

        }

}

if (flag) {

System.out.println(“卖出成功”);

    }else {

System.out.println(“卖出失败”);

    }

}

private void delete(){

System.out.println(“输入你要删除的商品遍号:”);

    Scanner scanner=new Scanner(System.in);

    int delNo=scanner.nextInt();

    boolean flag=true;

    for (int i=0;i

if (delNo == (i+1) &&articleSet.articles[i] !=null){

int j=i;// 备份下标

            while(articleSet.articles[j+1] !=null){

articleSet.articles[j]=articleSet.articles[j+1];

                j++;

            }

articleSet.articles[j]=null;

            flag =true;

break;

        }else{

flag=false;

        }

}

if (flag){

System.out.println(“删除成功”);

    }else{

System.out.println(“删除失败!”);

    }

}

// 查看商品信息

public void chakan(){

System.out.println("编号:\t 名称 \t 库存 \t 价格 \t 售出数量 ");

    for (int i=0; i

if (articleSet.articles[i] !=null) {

articleSet.articles[i].print(i+1);

        }

}

}

// 添加商品

public void add() {

// 接收用户的输入

    Scanner scanner =new Scanner(System.in);

    System.out.println("请输入商品的名字:");

    String name = scanner.next();

    System.out.println("价格:");

    double price=scanner.nextDouble();

    System.out.println("库存:");

    int kucun=scanner.nextInt();

    System.out.println("售出数量:");

    int number =scanner.nextInt();

    // 把接收到的数据封装到对象中

    Article newArticle =new Article();

    newArticle.setArticle(name,kucun,price,number);

    for (int i=0;i

if (articleSet.articles[i] ==null){//从前往后遍历数组,找到第一个没有存元素的位置

            articleSet.articles[i] = newArticle;//找到空位置,把新商品存入

            break;//只加入第一个位置,后续的位置不再判断

        }

}

}

}

吾生也有涯,而知也无涯,学习使使我快乐,java目前我学的不太好,但是还是需要好好学的,java有广泛的应用,主要应用在以下5点:

(1) Android应用程序

许多Android应用程序都是由Java程序员和开发人员开发的。尽管Android使用不同的jvm和不同的封装方法,但是代码仍然是用Java语言编写的。相当数量的手机支持Java游戏,这让很多非程序员都懂Java。

(2) 在金融业应用的服务器程序

Java在金融服务业得到了广泛的应用。许多第三方交易系统、银行和金融机构选择使用Java进行开发,因为Java相对安全[39]。大型跨国投资银行使用java编写前后电子交易系统、结算与确认系统、数据处理项目等项目。

在大多数情况下,Java用于服务器端开发,但大多数都没有任何前端。它们通常从一个服务器(上层)接收数据并将其发送到另一个处理系统(下一级)。

(3) 网站

Java在电子商务和网站开发领域占有一定的地位。开发人员可以使用许多不同的框架来创建web项目、springmvc、struts2.0和框架。

即使是简单的servlets、JSP和struts网站也经常用于政府项目。比如医疗、保险、教育、国防等部门都是基于Java的。

(4)嵌入式领域

Java在嵌入式领域发展空间很大。在这个平台上,只需130KB就能够使用Java技术(在智能卡或者传感器上)。

(5)大数据技术

Hadoop以及其他大数据处理技术很多都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。

学无止境,我永远都是学习者 ,我还是一个新手 ,经验有限 ,世界这么忙 ,我刚好有空写下了自己的心得 ,希望对大家有所帮助 ,缘分让我们一起,你们的赞赏,支持,关注就是对我莫大的支持

只有自己深深痛过,才能体会别人的痛,于是难得自我们反省。学习也是如此,只有我们自我反省思考才会进步,正所谓吾日三省吾身就是这样的道理。我们一定要努力学好java语言。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值