编程小白一枚,简单的Java小项目;自己的理解实现增删改查。
一、定义商品类
public class Commodity {//定义商品类
private String proname;//商品名
private Integer pronum;//商品编号
private Double proprice;//商品价格
private Integer procount;//商品数量
public Commodity() {//无参构造器
}
//有参构造器
public Commodity(String proname, Integer pronum, Double proprice, Integer procount) {
this.proname = proname;
this.pronum = pronum;
this.proprice = proprice;
this.procount = procount;
}
//set和get方法
public String getProname() {
return proname;
}
public void setProname(String proname) {
this.proname = proname;
}
public Integer getPronum() {
return pronum;
}
public void setPronum(Integer pronum) {
this.pronum = pronum;
}
public Double getProprice() {
return proprice;
}
public void setProprice(Double proprice) {
this.proprice = proprice;
}
public Integer getProcount() {
return procount;
}
public void setProcount(Integer procount) {
this.procount = procount;
}
//toString方法
@Override
public String toString() {
return "\t"+pronum +"\t\t"+proname+"\t\t\t"+proprice+"\t\t\t"+procount ;
}
}
二、定义商品的操作类
public class CommodityOperation {//商品操作类
ArrayList<Commodity> arrayList=new ArrayList<>();//定义一个List集合存放商品对象
Scanner scanner=new Scanner(System.in);
public void addc(){//添加商品
System.out.println("请输入商品的编号、商品名称、商品价格、商品数量");//通过控制台输入商品信息
Integer id= scanner.nextInt();
String name= scanner.next();
Double price= scanner.nextDouble();
Integer count=scanner.nextInt();
Commodity commodity=new Commodity(name,id,price,count);//通过构造器来向商品属性赋值
arrayList.add(commodity);//将商品对象添加至集合中
System.out.println("添加成功");
System.out.println();
}
public void findc(){//查询商品
System.out.println("------------商品库存清单-----------");
System.out.println("商品编号"+"\t\t"+"商品名称"+"\t\t"+"商品价格"+"\t\t"+"商品数量");
Iterator<Commodity> iterator=arrayList.iterator();//通过迭代器来遍历集合
while (iterator.hasNext()){
Commodity c= iterator.next();
System.out.println(c);
}
System.out.println("---------------------------------");
System.out.println();
}
public void delc(){//根据编号删除商品
System.out.println("请输入你要删除的商品的编号");
int id= scanner.nextInt();
if (arrayList.size()==0){//判断集合是否为空,为空则无法删除
System.out.println("你要删除的商品不存在");
}
else {
for (int i=0;i<arrayList.size();i++){
//循环遍历集合,通过商品在集合中存储的下标来删除商品
if (arrayList.get(i).getPronum()==id){
//如果输入的商品编号存在,则删除
arrayList.remove(i);
System.out.println("操作成功,已删除该商品");
break;
}
else if (i==arrayList.size()-1&&arrayList.get(i).getPronum()!=id){
//遍历到最后一个商品后,任未找到要删除的商品编号
System.out.println("你要删除的商品不存在");
}
}
}
System.out.println();
}
public void updc(){//根据商品的编号修改商品的价格
System.out.println("请输入你要修改商品的编号");
int x= scanner.nextInt();
if (arrayList.size()==0){
System.out.println("你要修改的商品编号不存在");
}
else{
System.out.println("请输入你要修改商品的价格和数量");
Double j= scanner.nextDouble();
Integer z=scanner.nextInt();
for (int i=0;i< arrayList.size();i++) {
//循环遍历集合根据编号找到要修改的商品
if (arrayList.get(i).getPronum()==x){
arrayList.get(i).setProprice(j);//用set方法给商品修改价格
arrayList.get(i).setProcount(z);//用set方法给商品修改数量
System.out.println("操作成功,商品已修改");
break;
}
else if (i==arrayList.size()-1&&arrayList.get(i).getPronum()!=x){
System.out.println("你要修改的商品不存在");
}
}
}
System.out.println();
}
public void findsum(){
System.out.println("-------商品库存数量及总价-------");
for (Commodity commodity: arrayList) {
Integer procount = commodity.getProcount();
Double sum= commodity.getProprice()*commodity.getProcount();
System.out.println("商品:"+commodity.getProname()+"\t"+"商品库存:"+procount+"\t"+"商品总价:"+sum);
}
}
}
三、主菜单页面
public class Test {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
//调用商品操作类
CommodityOperation commodityOperation=new CommodityOperation();
Boolean loop=true;
while (loop){
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("----------6、退 出---------");
System.out.println("请输入你的操作的编号:");
Integer num= scanner.nextInt();
switch (num){
case 1:
commodityOperation.findc();
break;
case 2:
commodityOperation.addc();
break;
case 3:
commodityOperation.delc();
break;
case 4:
commodityOperation.updc();
break;
case 5:
commodityOperation.findsum();
break;
case 6:
System.out.println("确认退出y/n");
String s= scanner.next();
if (s.equals("y")){
System.out.println("退出成功");
loop=false;
}
break;
default:
System.out.println("请输入正确的编号");
}
}
}
}
运行结果如下:
主界面:
添加货物:
查看货物清单:
修改货物:
查看库存及总价:
删除货物:
文章来源:https://www.toymoban.com/news/detail-502946.html
代码还需完善,欢迎评论,一起努力,共同进步。文章来源地址https://www.toymoban.com/news/detail-502946.html
到了这里,关于超市管理系统Java的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!