import java.util.ArrayList;
import java.lang.Integer;
import java.util.Scanner;
import java.util.Random;
class work
{
//库存管理
public static void main(String[] args)
{
ArrayList<KuCun> list=new ArrayList<KuCun>();
KuCun b1=new KuCun();
KuCun b2=new KuCun();
KuCun b3=new KuCun(); //所有品牌
b1.brand="MacbookAir";
b2.brand="ThinkPadT450";
b3.brand="ASUS-FL5800";
//所有尺寸
b1.size=13.3;
b2.size=14.0;
b3.size=15.6;
//所有库存
b1.num=5;
b2.num=10;
b3.num=18;
//所有价格
b1.price=6988.88;
b2.price=5999.99;
b3.price=4999.5; list.add(b1);
list.add(b2);
list.add(b3); show(list);
}
//执行封装
public static void show(ArrayList<KuCun> list){
Scanner sc=new Scanner(System.in);
while(true){
System.out.println("----------------库存管理----------------");
System.out.println("1.查看库存清单");
System.out.println("2.修改商品库存数量");
System.out.println("3.退出");
System.out.println("----------------------------------------");
System.out.println("请输入要执行的操作序号:");
int in=sc.nextInt();
switch(in){
case 1:
look(list);
break;
case 2:
select(list);
break;
case 3:
return;//break aa;return:返回调用我的地方
default:
System.out.println("----------------------------------------");
System.out.println("请输入正确的操作序号!");
System.out.println("----------------------------------------");
break;
}
}
}
//打印库存清单功能
public static void look(ArrayList<KuCun> list){
int sum=0;
int allSum=0;
System.out.println("品牌\t\t尺寸\t库存\t价格");
System.out.println("----------------------------------------");
for(int i=0;i<list.size();i++){
sum+=list.get(i).num;
allSum+=list.get(i).num*list.get(i).price;
System.out.print(list.get(i).brand+"\t"+list.get(i).size+"\t"+list.get(i).num+"\t"+list.get(i).price);
System.out.println();
}
System.out.println("总库存:"+sum);
System.out.println("商品总金额:"+allSum);
}
//库存商品数量修改功能
public static void select(ArrayList<KuCun> list){
System.out.println("请输入您要修改的商品序号");
for(int i=0;i<list.size();i++){
System.out.print((i+1)+":"+list.get(i).brand);
System.out.println();
}
Scanner sc=new Scanner(System.in);
int in=sc.nextInt();
while(true){
switch(in){
case 1:
System.out.println("商品名称为:"+list.get(in-1).brand);
System.out.println("请修改库存数量");
int add=sc.nextInt();
list.get(in-1).num=add;
System.out.println("修改后"+list.get(in-1).brand+"的库存为:"+add);
System.out.println();
return;
case 2:
System.out.println("商品名称为:"+list.get(in-1).brand);
System.out.println("请修改库存数量");
add=sc.nextInt();
list.get(in-1).num=add;
System.out.println("修改后"+list.get(in-1).brand+"的库存为:"+add);
System.out.println();
return;
case 3:
System.out.println("商品名称为:"+list.get(in-1).brand);
System.out.println("请修改库存数量");
add=sc.nextInt();
list.get(in-1).num=add;
System.out.println("修改后"+list.get(in-1).brand+"的库存为:"+add);
System.out.println();
return;
case 00:
return;
default:
System.out.println("请输入正确的商品序号");
in=sc.nextInt();
break;
}
}
}
}
//自定义类
class KuCun
{
//所有品牌
String brand;
//所有尺寸
double size;
//所有库存
int num;
//所有价格
double price; }

 

ArrayList 集合:库存管理的更多相关文章

  1. ArrayList集合例题,商品库存管理(集合)

    创建车库集合,存进车 public class demo1 { String pinpai; String c; int s; } import java.util.ArrayList; class ...

  2. java 用集合完成随机点名器和库存管理案例

    一 随机点名器 1.案例需求 随机点名器,即在全班同学中随机的找出一名同学,打印这名同学的个人信息. 我们来完成随机点名器,它具备以下3个内容: 存储所有同学姓名 总览全班同学姓名 随机点名其中一人, ...

  3. Java基础六(自定义类、ArrayList集合)

    今日内容介绍1.自定义类型的定义及使用2.自定义类的内存图3.ArrayList集合的基本功能4.随机点名器案例及库存案例代码优化 ###01引用数据类型_类 * A: 数据类型 * a: java中 ...

  4. 06_Java基础语法_第6天(自定义类、ArrayList集合)_讲义

    今日内容介绍 1.自定义类型的定义及使用 2.自定义类的内存图 3.ArrayList集合的基本功能 4.随机点名器案例及库存案例代码优化 01引用数据类型_类 * A: 数据类型 * a: java ...

  5. Java基础语法(自定义类、ArrayList集合)

    Java基础语法 今日内容介绍 u 自定义类 u ArrayList集合 第1章 引用数据类型(类) 1.1 引用数据类型分类 提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类 ...

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

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

  7. java方法中参数传递与随机点名器、库存管理案例

    一 参数传递 1.定义: 参数传递,可以理解当我们要调用一个方法时,我们会把指定的数值,传递给方法中的参数, 这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算了.这种传递方式,我 们称 ...

  8. 设计模式(十七)——迭代器模式(ArrayList 集合应用源码分析)

    1 看一个具体的需求 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院, 一个学院有多个系.如图: 2 传统的设计方案(类图) 3 传统的方式的问题分析 ...

  9. C#语言基础——集合(ArrayList集合)

    集合及特殊集合 集合的基本信息: System.Collections 命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合.System.Collections ...

随机推荐

  1. c# EF中equal的用法注意

    Entity FreamWork 无法创建“System.Object”类型的常量值.此上下文仅支持基元类型或枚举类型错误解决: 最近在开发中把我原来抄的架构里面的主键由固定的Guid改成了可以泛型指 ...

  2. N皇后问题的python实现

    数据结构中常见的问题,最近复习到了,用python做一遍. # 检测(x,y)这个位置是否合法(不会被其他皇后攻击到) def is_attack(queue, x, y): for i in ran ...

  3. (转)微服务_.NET Core Consul服务发现与治理

    原文地址:https://www.cnblogs.com/waynechan/p/9354909.html Consul官网:https://www.consul.io Consul下载地址:http ...

  4. [转]Sublime Text 3安装Json格式化插件

    1.安装Package control 首先需要安装Package control,如果已经安装请跳过此步骤.按Ctrl+Shift+p打开命令搜索框,输入PC,点击图中条目安装,如下图:   成功后 ...

  5. Java调用Http/Https接口(3)--Commons-HttpClient调用Http/Https接口

    Commons-HttpClient原来是Apache Commons项目下的一个组件,现已被HttpComponents项目下的HttpClient组件所取代:作为调用Http接口的一种选择,本文介 ...

  6. 【开发笔记】- SSM使用velocity模板语言

    1.在pom.xml里添加velocity模板语言支持的依赖 <!-- velocity模板语言支持包 --> <dependency> <groupId>org. ...

  7. Windows下MongoDB的下载安装、环境配置

    下载MongoDB 1.进入MongoDB官网,Products -> 选择SOFTWARE下的MongoDB Server 2.选择下载最新版 3.选择对应的版本下载 msi安装包形式安装Mo ...

  8. 【python】udp 数据的发送和接收

    import socket def send_message(): # 创建一个udp套接字 udp_socker = socket.socket(socket.AF_INET,socket.SOCK ...

  9. Class.getDeclaredFields()和Class.getFields()的区别。 Class.getMethods()和Class.getDeclaredMethods()的区别。

    package www.cn.extend; /** Animal * 2019/07/04 * @author Administrator * */ public class Animal { pu ...

  10. 0x01 Python logging模块

    目录 Python logging 模块 前言 logging模块提供的特性 logging模块的设计过程 logger的继承 logger在逻辑上的继承结构 logging.basicConfig( ...