ArrayList集合例题,商品库存管理(集合)
Posted lzw123-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList集合例题,商品库存管理(集合)相关的知识,希望对你有一定的参考价值。
创建车库集合,存进车
public class demo1 { String pinpai; String c; int s; }
import java.util.ArrayList; class demo03 { public static void main(String[] args) { //车辆的属性赋值 demo1 car1 = new demo1(); car1.pinpai="大众"; car1.c = "白色"; car1.s =18; demo1 car2 = new demo1(); car2.pinpai ="雪佛兰"; car2.c ="黑色"; car2.s =15; //创建车库,创建车库集合 ArrayList<demo1> cheku = new ArrayList<demo1>(); //添加车,在车库集合中添加元素 cheku.add(car1); cheku.add(car2); //取车,遍历车库集合 for (int i=0; i<cheku.size();i++ ) { //打印输出车库每个集合的元素属性 System.out.println("车的品牌是"+cheku.get(i).pinpai); System.out.println("车的颜色是"+cheku.get(i).c); System.out.println("车的尺寸是"+cheku.get(i).s); } } }
.定义一个学生类Student,包含三个属性姓名、年龄、性别,创建三个学生对象存入ArrayList集合中。
A:遍历集合遍历输出。
B:求出年龄最大的学生,让后将该对象的姓名变为:葫芦娃。
Java代码:
class Student { String name ; int age; String sex; }
import java.util.ArrayList; class School { public static void main(String[] args) { //创建并添加学生信息 Student s1 =new Student(); s1.name ="张三"; s1.age =18; s1.sex="男"; Student s2 =new Student(); s2.name ="李四"; s2.age =19; s2.sex="男"; Student s3 =new Student(); s3.name ="王五"; s3.age =20; s3.sex="女"; //创建学校集合 ArrayList<Student> university =new ArrayList<Student>(); //添加学生信息 university.add(s1); university.add(s2); university.add(s3); //打印显示所有学生信息 for (int i=0;i<university.size() ;i++ ) { System.out.println("第"+(i+1)+"名学生的姓名:"+university.get(i).name); System.out.println("第"+(i+1)+"名学生的年龄:"+university.get(i).age); System.out.println("第"+(i+1)+"名学生的性别:"+university.get(i).sex); } //求最大年龄 int max=0; int i=0; //遍历学校集合,找出所有学生年龄最大的 for ( i=0;i<university.size() ;++i ) { if(max<university.get(i).age){ max = university.get(i).age; } } //修改姓名 for ( i=0;i<university.size() ;++i ){ if(max == university.get(i).age ){ university.get(i).name = "葫芦娃"; //打印显示 System.out.println("修改后第"+(i+1)+"名学生的姓名:"+university.get(i).name); } } } }
结果:
定义一个手机类Phone,包含三个属性品牌(brand)、价格(price)、颜色(color)。
创建四个手机("小米"、"华为"、"乐视"、"奇酷")对象存入ArrayList集合中,并遍历输出。
class Phone { String brand;//手机名称 Double price; String color; }
import java.util.ArrayList; class Store { public static void main(String[] args) { //创建手机属性数组 String[] b ={"小米","华为","乐视","酷奇"}; double[] p={2999,2599,2499,1999}; String[] c={"星空紫","星耀红","跃动白","陶瓷黑"}; //System.out.println(b[1]); //创建手机新对象 Phone p1 = new Phone(); Phone p2 = new Phone(); Phone p3 = new Phone(); Phone p4 = new Phone(); //创建手机商店集合 ArrayList<Phone> shop =new ArrayList<Phone>(); //添加手机 shop.add(p1); shop.add(p2); shop.add(p3); shop.add(p4); //遍历手机商店集合,让手机属性数组中各个数组的第i+1个元素等于第i+1个手机对象的对应属性的属性值 for (int i=0;i<shop.size() ;i++ ) { shop.get(i).brand = b[i]; shop.get(i).price = p[i]; shop.get(i).color = c[i]; //打印输出 System.out.println("手机品牌:"+shop.get(i).brand+" 价格:"+shop.get(i).price+" 颜色:"+shop.get(i).color); } } }
结果:
定义一个员工类Employee,包含三个属性姓名、工号、工资,创建三个员工对象存入ArrayList集合中,并遍历输出。
class Employee { String name; String gonghao; double gongzi; }
import java.util.ArrayList; class Boss { public static void main(String[] args) { //创建员工属性数组 String[] n={"王小二","马小跳","宋小宝"}; String[] gh ={"007","008","009"}; double[] gz ={10000,8000,60000}; //创建员工对象 Employee e1=new Employee(); Employee e2=new Employee(); Employee e3=new Employee(); //创建公司集合 ArrayList<Employee> company = new ArrayList<Employee>(); //添加员工 company.add(e1); company.add(e2); company.add(e3); //遍历公司集合,让员工各个数组的第i+1个元素等于公司集合的第i+1个员工的属性的属性值 for (int i=0;i<company.size() ;i++ ) { company.get(i).name =n[i]; company.get(i).gonghao =gh[i]; company.get(i).gongzi =gz[i]; //打印 System.out.println("姓名:"+company.get(i).name+" 工号:"+company.get(i).gonghao+" 工资:"+company.get(i).gongzi); } } }
商品库存管理:
//导包 import java.util.ArrayList;//集合包 import java.util.Random;//随机数包 import java.util.Scanner;//录入输入包 class cangku { public static void main(String[] args) { //定义集合 //商品品牌 ArrayList<String> pinpai = new ArrayList<String>(); pinpai.add("MacBookAir"); pinpai.add("ThinkpadT450"); pinpai.add("ASUS-FL5800"); //商品尺寸 ArrayList<Double> size = new ArrayList<Double>(); size.add(13.3); size.add(14.0); size.add(15.6); //商品价格 ArrayList<Double> price = new ArrayList<Double>(); price.add(6988.88); price.add(5999.99); price.add(4999.5); //库存 ArrayList<Integer> kucun = new ArrayList<Integer>(); kucun.add(5); kucun.add(10); kucun.add(18); //调用商品管理方法 guanli(pinpai,size,price,kucun);//传实参,传商品定义四个集合 } //菜单 public static void caidan() { //打印菜单 System.out.println("---------------库存管理--------------"); System.out.println("1.查看库存清单"); System.out.println("2.修改商品库存数量"); System.out.println("3.退出"); System.out.println("请输入你要执行的序号"); } //修改商品库存方法 public static void update(ArrayList<Integer> d) { //创建输入实例 Scanner sc = new Scanner(System.in); //输入序号 System.out.println("请输入修改的商品序号"); int num = sc.nextInt(); //输入修改数量 System.out.println("请输入修改的商品库存数量"); int n = sc.nextInt(); //修改指定位置内容 d.set(num-1,n);//num-1为第num个元素的下标,n为要替换后的元素 } //商品库存清单 public static void show(ArrayList<String> a,ArrayList<Double> b,ArrayList<Double> c,ArrayList<Integer> d) //定义形参a,b,c,d与实参相应类型用来接收传参数值 { int zkc=0; double zj=0; //打印表头 System.out.println("---------------------------------商城库存清单---------------------------------"); System.out.println("品牌型号 尺寸 价格 库存数"); //遍历商品各个集合,取出集合全部元素 for(int i=0;i<a.size();i++){ //利用各个集合元素下标一样,取出各集合元素 System.out.println((i+1)+a.get(i)+" "+" "+b.get(i)+" "+c.get(i)+" "+d.get(i)); zkc += d.get(i); zj += (c.get(i)*d.get(i)); } System.out.println("--------------------------------------------------------------------------------"); System.out.println("总库存数:"+zkc); System.out.println("库存商品总金额: "+zj); } //商品管理 public static void guanli(ArrayList<String> pinpai,ArrayList<Double> size,ArrayList<Double> price,ArrayList<Integer> kucun) //定义与实参类型相同的形参接收,实参要传的值 { //循环显示菜单和输入序号 while(true) { caidan();//调用菜单界面 //录入输入的值 Scanner sc = new Scanner(System.in); int xh = sc.nextInt();//定义变量xh接收输入值 //判断输入序号 switch (xh) { //查看库存清单 case 1: show(pinpai,size,price,kucun);//调用商品清单方法,显示清单,用四个实参集合传参数 break;//跳出switch,继续输入序号判断 case 2: show(pinpai,size,price,kucun);//调用商品清单方法,显示清单 update(kucun);//修改库存数据,传实参kucun集合 break;//跳出switch判断,继续循环 case 3: return;//跳出整个guanli()方法,结束程序,退出 default : System.out.println("您的输入不合法~");//当输入其他情况时显示 continue;//继续循环 } } } }
以上是关于ArrayList集合例题,商品库存管理(集合)的主要内容,如果未能解决你的问题,请参考以下文章