天天看点

java商品管理实现的_java 商品管理的效果实现

啥也不说;;;直接上代码!!!

1、main函数

package goin;

import fenlei.shopping;

import fenlei.shuxin;

public class zhu {

//测试类

public static void main(String[] args) {

shopping hh=new shopping();

hh.shuwmenu();

}

}

2、shopping.java

package fenlei;

import java.util.Scanner;

public class shopping {

shuxin[] yh=new shuxin[200];//可以用yh调用数组里的商品信息

int index=0;//代表对象数组中现有的元素个数 下一次添加新商品对象储存的下标位置

public boolean addsp(String name,double money ,int tiaoma,int num){

//传入的数组组装成商品对象

shuxin s=new shuxin(name,money,tiaoma,num);

//验证该对象是否已经在数组中

int f=getflag(s.getTiaoma());

if (f==-1) {

//新商品的条码没有出现过

yh[index]=s;

index++;

return true;

}

else {

//商品信息存在

return false;

}

}

//根据商品条码获取商品对象在数组中的下标位置

public int getflag(int tiaoma){

int flag=-1;

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

if (tiaoma==yh[i].getTiaoma()) {

flag=i;

break;

}

}

return flag;

}

public void sortBycount(){

//查询全部的商品,并且以价格的升序排序

for (int i = 0; i < index-1; i++) {

for (int j = 0; j < index-i-1; j++) {

//比较的是两个对象的数量属性大小

if (yh[j].getNum()>yh[j+1].getNum()) {

//交换的应该是两个对象的位置交换

shuxin k=yh[j];//地址备份

yh[j]=yh[j+1];

yh[j+1]=k;

}

}

}

}

public void findall(){

//全查询

System.out.println("商品名称\t商品价格\t商品条码\t商品价格\t");

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

System.out.println(yh[i].getName()+"\t"+yh[i].getMoney()+"\t"+yh[i].getTiaoma()+"\t"+yh[i].getNum());

}

}

Scanner input=new Scanner(System.in);

//购买商品

public double getmoney(){

double sum=0;

String answer;

do {

System.out.println("请输入条码");

int c=input.nextInt();

//调用根据查找下标位置的方法

int i=getflag(c);

if (i==-1) {

System.out.println("没有找到要结算的商品信息");

} else {

//找到了要结算的商品信息 可以结算

//修改这件商品的剩余数量

if (yh[i].getNum()>0) {

yh[i].setTiaoma(yh[i].getTiaoma()-1);

}

//累加总价

sum+=yh[i].getTiaoma();

}

System.out.println("是否继续?y/n");

answer=input.next();

} while (answer.equals("y"));

return 0;

}

//根据商品条码修改商品的数量

public String modify (int tiaoma,int num){

if (num>0) {

//补货商品数量合理 可以进行操作

int f=getflag(tiaoma);

if(f==-1){

//没有找到对应条码的商品

return "没有匹配的商品信息";

}

else{

//找到商品

yh[f].setNum(yh[f].getNum()+num);

return"商品补货成功";

}

}

else{

return "数量填写有误";

}

}

//商品下架(删除商品的方法)

public String remove(int tiaoma){

//查找对应条码的商品是否存在

int f=getflag(tiaoma);//返回的是对应条码的商品对象在对象数组中的下标位置

if (f==-1) {

//没有找到该商品的信息

return"没有找到此类商品";

} else {

for (int i = f; i < index-1; i++) {

yh[i]=yh[i+1];//后面一个替换前面一个

}

index--;//替换完成以后,将整个数组进行减一个

}

return null;

}

//计算所有商品的总价值

public double getSum(){

//准备一个总价的容器

double sum=0;

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

sum+=yh[i].getNum()*yh[i].getMoney();//计算

}

return sum;

}

//菜单方法 将上面的功能整合起来

public void shuwmenu(){

System.out.println("1.新商品入库 2.商品清单展示3.购物结算4.补货5.下架6.查看总价值7.退出");

int choose=input.nextInt();

switch (choose) {

case 1:

//解收用户输入必要的方法参数

System.out.println("请输入新商品的名称");

String code=input.next();

System.out.println("请输入新商品的价格");

int money=input.nextInt();

System.out.println("请输入新商品的条码");

int tiaoma=input.nextInt();

System.out.println("请输入新商品的数量");

int count=input.nextInt();

System.out.println(addsp(code,money,tiaoma,count)?"新增商品成功":"新增商品失败");

shuwmenu();

break;

case 2:

sortBycount();//排序

findall();//展示

shuwmenu();

break;

case 3:

double money1=getmoney();

System.out.println("您总计消费"+money1+"元!");

shuwmenu();

break;

case 4:

System.out.println("请输入要补货的商品条码:");

int c1=input.nextInt();

System.out.println("请输入商品的补货数量:");

int count1=input.nextInt();

System.out.println(modify(c1, count1));

shuwmenu();

break;

case 5:

System.out.println("请输入要下架的商品条码:");

int c2=input.nextInt();

System.out.println(remove(c2));

shuwmenu();

break;

case 6:

System.out.println("所以商品总价值为:"+getSum()+"元!");

shuwmenu();

break;

case 7:

System.out.println("谢谢使用!再见!");

break;

default:

System.out.println("错误的选择!请重新输入!");

shuwmenu();

break;

}

}

}

3、shuxin.java

package fenlei;

public class shuxin {

//private属性私有化

//名称,单价,条码,数量

private String name;

private double money;

private int tiaoma,num;

public shuxin(){

}

//构造方法

public shuxin(String name,double money ,int tiaoma,int num){

this.setName(name);

this.setMoney(money);

this.setTiaoma(tiaoma);

this.setNum(num);

}

public String getName(){

return name;

}

public void setName(String name){

this.name=name;

}

public double getMoney() {

return money;

}

public void setMoney(double money) {

if (money>=0) {

this.money = money;//给一个限制

}

}

public int getTiaoma() {

return tiaoma;

}

public void setTiaoma(int tiaoma) {

this.tiaoma = tiaoma;

}

public int getNum() {

return num;

}

public void setNum(int num) {

if (num>=0) {//给一个限制

this.num = num;

}

}

}

只要这三个代码就可以实现了,代码里面的基本操作和作用也注释了

如果是新手的话这个例子还是不错的,看了之后,可以自己下来实现以下,对应得ppt要求和说明我也上传一下,方便大家更能有效的去理解和学习,谢谢!