package demo1;

import java.util.ArrayList;
import java.util.Scanner; public class Demo1 {
public static void main(String[] args) {
ArrayList<Goods> array = new ArrayList<Goods>();
while(true) { //功能块的选择 一直循环之道用户选择退出
int num = chooseFunction(); //选择功能
switch(num) {
case 1:
printGoods(array); //功能1:打印所有商品
break;
case 2: //功能2:添加商品
addGoods(array);
break;
case 3: //功能3:修改商品
updateGoods(array);
break;
case 4: //功能4:删除商品
deleteGoods(array);
break;
case 5: //退出
return;
default: //其他情况
System.out.println("无此功能");
}
}
}
//选择功能
public static int chooseFunction() {
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("请选择序号:");
Scanner sc = new Scanner(System.in);
int index = sc.nextInt();
return index;
}
//功能1:打印所有商品
public static void printGoods(ArrayList<Goods> array) {
System.out.println("编号\t品牌\t尺寸\t价格\t数量");
for (int i = 0; i < array.size(); i++) {
Goods g = array.get(i);
System.out.println((i+1)+"\t"+g.brand+"\t"+g.size+"\t"+g.price+"\t"+g.count);
}
}
//功能2:添加商品
public static void addGoods(ArrayList<Goods> array) {
Scanner sc = new Scanner(System.in);
while(true) {
System.out.println("请输入品牌:");
String brand = sc.next();
System.out.println("请输入尺寸:");
double size = sc.nextDouble();
System.out.println("请输入价格:");
double price = sc.nextDouble();
System.out.println("请输入数量:");
int count = sc.nextInt(); Goods g = new Goods();
g.brand = brand;
g.size = size;
g.price = price;
g.count = count;
array.add(g);
System.out.println("添加成功");
System.out.println("是否继续输入(1为继续输入0为结束输入)");
int number = sc.nextInt();
if(number==0)
return;
}
}
//功能3:修改商品
public static void updateGoods(ArrayList<Goods> array) {
Scanner sc = new Scanner(System.in);
while(true) {
System.out.println("请输入要修改的商品的序号:");
int index= sc.nextInt()-1;
Goods g = array.get(index);
System.out.println("请输入品牌:");
String brand = sc.next();
g.brand = brand; System.out.println("请输入尺寸:");
double size = sc.nextDouble();
g.size = size; System.out.println("请输入价格:");
double price = sc.nextDouble();
g.price = price; System.out.println("请输入价格:");
int count = sc.nextInt();
g.count = count;
System.out.println("修改成功");
System.out.println("是否继续输入(1为继续输入0为结束输入)");
int number = sc.nextInt();
if(number==0)
return;
}
}
//功能4:删除商品
public static void deleteGoods(ArrayList<Goods> array) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要删除的序号:");
int num = sc.nextInt()-1;
array.remove(num);
System.out.println("删除成功");
}
}

Java_7.2库存管理的更多相关文章

  1. 疯狂C#~伴随着我的库存管理¥

    每次的等待都是期待下一次的勃发!但激进的我非常想和大家学习一些东西,所以特地的分享了一个库存管理, 生活中容易运用的很多,但现在的学业希望能够得到各界人士的帮助!!! 首先:会有几个类来让它们协调 ( ...

  2. C#的库存管理之旅的别样意义

    我不知道大家对C#的一些基础知识掌握得怎么样了? 但无论怎么样,都应该静心下来去慢慢品味我的总结以及“库存管理”项目需用到的一些知识和技巧.你将会得到你料想不到的收获哦. 知识梳理: 数据类型:boo ...

  3. Odoo 的库存管理与OpenERP之前的版本有了很大的不同,解读Odoo新的WMS模块中的新特性

    原文来自:http://shine-it.net/index.php/topic,16409.0.html 库存移动(Stock Move)新玩法Odoo的库存移动不仅仅是存货在两个“存货地点”之间的 ...

  4. openerp经典收藏 OpenERP库存管理的若干概念讲解(新增库存价值)(转载)

    OpenERP库存管理的若干概念讲解(新增库存价值) 原文:http://shine-it.net/index.php/topic,2425.0/topicseen.html 一.复式库存(Doubl ...

  5. EBS业务学习之库存管理

    库存管理业务流程 企业结构 库存结构 库存结构定义 指定每个子库存的特性: •子库存的数量跟踪 •资产类子库存 •保留子库存 •净值子库存 •包含在有效承诺中Include in ATP •子库存级库 ...

  6. 【MM系列】SAP的库存管理

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP的库存管理   前言部分 库存 ...

  7. 「SAP技术」为正常库存管理的物料做成本中心采购会是什么结果?

    SAP 为正常库存管理的物料做成本中心采购会是什么结果? 这种采购可以正常进行,收货后SAP会更新采购订单里指定的费用类科目,而库存数量和库存价值都不会增加. 1, 如下物料号,是正常做库存管理的物料 ...

  8. Java生鲜电商平台-库存管理设计与架构

    Java生鲜电商平台-库存管理设计与架构 WMS的功能: 1.业务批次管理 该功能提供完善的物料批次信息.批次管理设置.批号编码规则设置.日常业务处理.报表查询,以及库存管理等综合批次管理功能,使企业 ...

  9. 用友U8将存货核算期初单价金额回写到库存管理期初单价金额

    在用友U8及相关产品中,库存管理期初要求必须录入数量,但单价和金额并不是必输的.从本人过去实施经验来看,为了保证ERP产品的快速上线,有不少企业只能先提供库存管理期初数量,而单价金额需要后续才能确定. ...

随机推荐

  1. SourceTree commit information window消失解决办法

    https://answers.atlassian.com/questions/15282793/sourcetree-how-to-show-commit-information-panel 执行命 ...

  2. jquery接触初级----jquery 对象和Dom对象

    1. DOM 对象,每一份DOm对象(Document Object model)都可以表示成一棵树,一个基本的网页如下: <!DOCTYPE html> <html lang=&q ...

  3. CSS COLOR

    CSS COLOR Color Review We've completed our extensive tour of the colors in CSS! Let's review the key ...

  4. Zookeeper 3、Zookeeper工作原理(转)

    1.Zookeeper的角色 » 领导者(leader),负责进行投票的发起和决议,更新系统状态 » 学习者(learner),包括跟随者(follower)和观察者(observer),follow ...

  5. 用ADO操作数据库的方法步骤(ZT)

    http://www.cppblog.com/changshoumeng/articles/113437.html 学习ADO时总结的一些经验 用ADO操作数据库的方法步骤 ADO接口简介 ADO库包 ...

  6. Hibernate 再接触 关系映射 一对一单向外键联合主键关联

    例子: Husband.java package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persiste ...

  7. js(鼠标键盘拖动事件)

    拖动事件是h5(HTML5的) 1:draggable(true) 2:拖动源 ondragstart ,ondragend 3:目的地 ondraglenter,ondragover,ondragl ...

  8. 小程序:pages/index/index/出现脚本错误或未正确调用Page()

    第一次尝试玩小程序,配置好以后报错.pages/index/index/出现脚本错误或未正确调用Page() 才发现解决的方式是:新建的文件默认是没有page()的,所以你需要在.js文件中加上Pag ...

  9. 关于在VS2008和VS2010中禁用及卸载Visual Assist X的方法研究——转载

    禁用和启用   此方法对于VS2008和VS2010 都适用. 在VS2008或VS2010菜单栏中选择“VassistX”选项卡,找到“Enable/Disable Visual Assist X” ...

  10. arcgis_SDE安装步骤

    弄了将近一个星期的Oracle和ArcSDE终于让我给弄好了!下面把过程跟大家分享一下: 首先是Oracle10gR2的安装,在Oracle的官方网站上可以下到Oracle10gR2的安装程序,安装过 ...