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. 【JVM】3、jvm参数和main方法参数

    在实际应用中,我们经常会使用一些额外的参数定义不通的环境下jvm的启动设置 特别是springCloud的项目,因为yml配置文件的问题,如果我们要做负载的话,会同时启动一个jar当做2个服务 那么这 ...

  2. 【LEETCODE】70、字符匹配1023 Camelcase Matching

    最近做leetcode总感觉自己是个智障,基本很少有题能自己独立做出来,都是百度... 不过终于还是做出了一题...而且速度效率还可以 哎,加油吧,尽量锤炼自己 package y2019.Algor ...

  3. Android Studio中设置与Eclipse中 Ctrl+1 功能类似的快捷键

    Eclipse:Ctrl + 1 Android Studio: Alt + Enter 1. 首先当然是打开设置窗口啦,然后在IDE Settings 下找到Keymap 2. 在Keymap的搜索 ...

  4. linux安装mysql后报错启动不了Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

    今天安装完Mysql后,开启发生了错误: 2.打开错误信息文件,查看错误原因是:Plugin 'FEDERATED' is disabled. /usr/sbin/mysqld: Table 'mys ...

  5. springboot 通过@WebFilter(urlPatterns )配置Filter过滤路径

    springboot 通过@WebFilter(urlPatterns )配置Filter过滤路径,没有配置/*,输入任何路径都能进过滤器 2019年04月25日 12:51:33 peigui.hu ...

  6. C# 练习题 判断1至输入数值之间有多少个素数,并输出所有素数。

    题目:判断1至输入数值之间有多少个素数,并输出所有素数.1.程序分析:判断素数的方法:用一个数分别去除2到当前数-1,如果能被整除,则表明此数不是素数,反之是素数. class Program { / ...

  7. MyBatis和spring整合简单实现

    spring和MyBatis整合: 导入spring和MyBatis的整合jar包,以及其依赖jar包: 导入MyBatis和spring的整合jar包. spring的核心jar包. 定义Mybat ...

  8. pandas-14 concatenate和combine_first的用法

    pandas-14 concatenate和combine_first的用法 concatenate主要作用是拼接series和dataframe的数据. combine_first可以做来填充数据. ...

  9. java中的参数传递

    Java中只有传值调用(值传递),没有传址调用(址传递或者引用传递).所以在java方法中改变参数的值是不会改变原变量的值的,但为什么改变引用变量的属性值却可以呢?请看下面的解答. java中的数据类 ...

  10. 创建Spring boot project报错:Project build error: Non-resolvable parent POM for xxx:0.0.1-SNAPSHOT: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent

    刚开始创建Spring boot项目时,pom.xml文件时报如下图错误: 在网上百度的说让更新下Maven的update project,我试了没用,最后将version版本改了就行了,我原来版本是 ...