1点名器
import java.util.ArrayList; import java.util.Random; import java.util.Scanner; class CallName3 { public static void main(String[] args) { ArrayList<String> list=new ArrayList<String>(); while(true){ System.out.println("1.存储同学名字"); System.out.println("2.查看全班同学"); System.out.println("3.点名"); System.out.println("4.退出"); System.out.println("请输入您选择的编号:"); Scanner sc=new Scanner(System.in); int choose=sc.nextInt(); switch(choose){ case 1: saveAll(list); break; case 2: showAll(list); break; case 3: callOne(list); break; case 4: System.out.println("您已退出"); return; } } } //存储 public static void saveAll(ArrayList<String> list){ System.out.println(); System.out.println("请输入您要录入的同学数量:"); //还可以这样: //System.out.println("您还要继续添加吗?"); //System.out.println("1.继续 2.取消"); Scanner sc=new Scanner(System.in); int num=sc.nextInt(); for(int i=0;i<num;i++){ System.out.println("请输入第"+(i+1)+"位同学的姓名:"); list.add(sc.next()); } System.out.println(num+"名同学已录入成功!"); System.out.println(); }; //总览 public static void showAll(ArrayList<String> list){ System.out.println(); System.out.println("全班同学为:"); for(int i=0;i<list.size();i++){ System.out.print(list.get(i)+" "); }; System.out.println(); System.out.println(); }; //随机点名 public static void callOne(ArrayList<String> list){ System.out.println(); System.out.println("点到的同学为:"); Random r=new Random(); int i=r.nextInt(list.size()); System.out.println(list.get(i)); System.out.println(); } }
2库存管理
class Pro { String proName; //商品名 double proSize; //商品尺寸 double proPrice; //商品价格 int proNum; //库存 }
import java.util.Scanner; import java.util.ArrayList; class Stock2 { public static void main(String[] args) { //创建Pro对象并初始化数据 Pro mac=new Pro(); mac.proName="MacBookAir"; mac.proSize=13.3; mac.proPrice=6988.88; mac.proNum=5; Pro think=new Pro(); think.proName="ThinkpadT450"; think.proSize=14.0; think.proPrice=5999.99; think.proNum=10; Pro as=new Pro(); as.proName="ASUS-FL5800"; as.proSize=15.6; as.proPrice=4999.5; as.proNum=18; ArrayList<Pro> prolist=new ArrayList<Pro>(); //创建集合 //把对象加入集合 prolist.add(mac); prolist.add(think); prolist.add(as); //功能选择 while(true){ System.out.println("----------库存管理----------"); System.out.println("1.查看库存清单"); System.out.println("2.修改商品库存数量"); System.out.println("3.退出"); System.out.println("请输入要执行的操作序号:"); Scanner sc=new Scanner(System.in); int select=sc.nextInt(); if(select==1){ showList(prolist); } if(select==2){ modifyNum(prolist); } if(select==3){ signOut(); break; } } } //查看库存清单 public static void showList(ArrayList<Pro> prolist){ System.out.println(); System.out.println("--------------------商城库存清单----------------------------"); System.out.println("编号 品牌型号 尺寸 价格 库存数"); //打印商品 for(int i=0;i<prolist.size();i++){ System.out.println(" "+(i+1)+" "+prolist.get(i).proName+" "+prolist.get(i).proSize+" "+prolist.get(i).proPrice+" "+prolist.get(i).proNum); } System.out.println("------------------------------------------------------------"); int sumNum=0; //总库存 for(int i=0;i<prolist.size();i++){ sumNum+=prolist.get(i).proNum; } System.out.println("总库存数:"+sumNum); double sumMoney=0; //总金额 for(int i=0;i<prolist.size();i++){ sumMoney+=prolist.get(i).proPrice*prolist.get(i).proNum; } System.out.println("库存商品总金额:"+sumMoney); System.out.println(); System.out.println(); } //修改库存 public static void modifyNum(ArrayList<Pro> prolist){ System.out.println(); Scanner sc=new Scanner(System.in); while(true){ System.out.println("请输入您要修改的商品编号"); int proId=sc.nextInt(); if(proId>0&&proId<=prolist.size()){ //必须输入正确的编号范围 System.out.println("请输入您要修改的库存数量"); int afterNum=sc.nextInt(); prolist.get(proId-1).proNum=afterNum; System.out.println(); break; } } } //退出 public static void signOut(){ System.out.println("您已退出"); } }
3 超市商品管理
public class Pro { String num; //商品编号 String name; //商品名称 double price; //商品单价 }
package com.oracle.demo01; import java.util.ArrayList; import java.util.Scanner; public class Stock{ public static void main(String[] args) { //建商品对象 Pro p1=new Pro(); p1.num="9001"; p1.name="少林寺酥饼核桃"; p1.price=120.0; Pro p2=new Pro(); p2.num="9002"; p2.name="尚康杂粮牡丹饼"; p2.price=20.0; Pro p3=new Pro(); p3.num="9003"; p3.name="新疆原产哈蜜瓜"; p3.price=7.0; //商品对象加入集合 ArrayList<Pro> prolist=new ArrayList<Pro>(); prolist.add(p1); prolist.add(p2); prolist.add(p3); //菜单 while(true){ System.out.println("==========欢迎光临 oracle 超市=========="); System.out.println("1:货物清单 2:添加新货物 3:删除货物 4:修改货物"); System.out.println("5:退出系统"); System.out.println("请您输入要操作的功能序号:"); Scanner sc=new Scanner(System.in); int choose=sc.nextInt(); switch(choose){ case 1: showList(prolist); break; case 2: addPro(prolist); break; case 3: delPro(prolist); break; case 4: editPro(prolist); break; case 5: System.out.println("您已退出系统"); return; } } } //显示商品 public static void showList(ArrayList<Pro> prolist){ System.out.println(); System.out.println("==========商品库存清单=========="); System.out.println("商品编号 商品名称 商品单价"); for(int i=0;i<prolist.size();i++){ System.out.println(prolist.get(i).num+" "+prolist.get(i).name+" "+prolist.get(i).price+" "); } System.out.println(); } //添加商品 public static void addPro(ArrayList<Pro> prolist){ System.out.println(); Pro newPro=new Pro(); Scanner sc=new Scanner(System.in); System.out.println("请输入新水果的名称:"); newPro.name=sc.next(); //最好还是定义个变量 System.out.println("请输入新水果的编号:"); newPro.num=sc.next(); System.out.println("请输入新水果的单价:"); newPro.price=sc.nextDouble(); prolist.add(newPro); System.out.println("新商品已添加成功!"); System.out.println(); } //删除商品 public static void delPro(ArrayList<Pro> prolist){ System.out.println(); //showList(prolist); //删除之前先展示一下商品,体验更好 System.out.println("请输入您要删除的水果编号"); Scanner sc=new Scanner(System.in); String dnum=sc.next(); for(int i=0;i<prolist.size();i++){ if(prolist.get(i).num.equals(dnum)){ //直接==是地址相等,因为是String是引用数据类型。如果判断不相等,可以前面加个!取反 prolist.remove(i); } } System.out.println("水果信息删除完毕!"); System.out.println(); } //修改商品 public static void editPro(ArrayList<Pro> prolist){ System.out.println(); System.out.println("请输入您要修改信息的水果编号:"); Scanner sc=new Scanner(System.in); String dnum=sc.next(); //用set来修改 System.out.println("请输入新的水果编号:"); String nnum=sc.next(); System.out.println("请输入新的水果名称:"); String nname=sc.next(); System.out.println("请输入新的水果单价:"); Double nprice=sc.nextDouble(); Pro newPro=new Pro(); newPro.num=nnum; newPro.name=nname; newPro.price=nprice; for(int i=0;i<prolist.size();i++){ if(prolist.get(i).num.equals(dnum)){ prolist.set(i,newPro); //用新对象替代 } } System.out.println("水果信息更新完毕!"); System.out.println(); } }
4.定义一个学生类Student,包含三个属性姓名、年龄、性别,创建三个学生对象存入ArrayList集合中。
A:遍历集合遍历输出。
B:求出年龄最大的学生,让后将该对象的姓名变为:葫芦娃。
//学生类 class Student { String sname; //姓名 int sage; //年龄 String ssex; //性别 }
import java.util.ArrayList; class StudentTest { public static void main(String[] args) { //创建三个学生对象 Student s1=new Student(); s1.sname="张春"; s1.sage=18; s1.ssex="男"; Student s2=new Student(); s2.sname="王夏"; s2.sage=19; s2.ssex="女"; Student s3=new Student(); s3.sname="李秋"; s3.sage=20; s3.ssex="男"; //学生对象存入ArrayList集合中 ArrayList<Student> sList=new ArrayList<Student>(); sList.add(s1); sList.add(s2); sList.add(s3); //遍历集合 System.out.println("姓名 年龄 性别"); for(int i=0;i<sList.size();i++){ System.out.print(sList.get(i).sname+" "+sList.get(i).sage+" "+sList.get(i).ssex); System.out.println(); } //求出年龄最大的学生 int maxAge=sList.get(0).sage; //默认第一个同学最大 for(int i=1;i<sList.size();i++){ if(sList.get(i).sage>maxAge){ maxAge=sList.get(i).sage; } } //最大年龄的改名 for(int i=0;i<sList.size();i++){ if(sList.get(i).sage==maxAge){ sList.get(i).sname="葫芦娃"; } } //遍历修改后集合 System.out.println(); System.out.println("修改后的同学们:"); System.out.println("姓名 年龄 性别"); for(int i=0;i<sList.size();i++){ System.out.print(sList.get(i).sname+" "+sList.get(i).sage+" "+sList.get(i).ssex); System.out.println(); } } }