用eclipse实现货物信息管理的增、删、改和查功能
时间: 2023-12-08 14:05:46 浏览: 174
myeclipse 实现框架 spring+springmvc+springsecurity+myibatis+mysql用户认证和人员增删改查
5星 · 资源好评率100%
好的,这里是一个简单的Java代码示例,实现货物信息管理的增、删、改和查功能。在这个示例中,我们使用了一个 `Goods` 类来表示货物,其中包含货物的编号、名称、价格和库存数量等信息。在货物信息管理中,我们使用了一个 `ArrayList` 类型的商品列表 `goodsList` 来存储所有的货物信息。
```java
import java.util.ArrayList;
import java.util.Scanner;
public class SupermarketManagementSystem {
static String username = "admin"; //管理员账号
static String password = "123456"; //管理员密码
static int chance = 3; //登录机会
static ArrayList<Goods> goodsList = new ArrayList<Goods>(); //商品列表
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String choice;
do {
System.out.println("=========超市信息管理系统=========");
System.out.println("1.登录系统");
System.out.println("2.更改管理员密码");
System.out.println("3.系统退出");
System.out.println("=================================");
System.out.print("请选择:");
choice = input.next();
switch (choice) {
case "1":
loginSystem(input);
break;
case "2":
changePassword(input);
break;
case "3":
System.out.println("感谢使用本系统!");
break;
default:
System.out.println("输入有误,请重新选择!");
break;
}
} while(!choice.equals("3"));
}
//登录系统
public static void loginSystem(Scanner input) {
while (chance > 0) {
System.out.print("请输入用户名:");
String name = input.next();
System.out.print("请输入密码:");
String pwd = input.next();
if (name.equals(username) && pwd.equals(password)) {
System.out.println("登录成功!");
goodsManagement(input);
break;
} else {
chance--;
if (chance == 0) {
System.out.println("登录失败,您已无法登录!");
} else {
System.out.println("用户名或密码错误,请重新输入,您还有" + chance + "次机会!");
}
}
}
}
//更改管理员密码
public static void changePassword(Scanner input) {
System.out.print("请输入原密码:");
String oldPwd = input.next();
if (!oldPwd.equals(password)) {
System.out.println("原密码错误!");
return;
}
System.out.print("请输入新密码:");
String newPwd = input.next();
System.out.print("请再次输入新密码:");
String confirmPwd = input.next();
if (!newPwd.equals(confirmPwd)) {
System.out.println("两次输入的密码不一致!");
return;
}
password = newPwd;
System.out.println("管理员密码修改成功!");
}
//货物信息管理
public static void goodsManagement(Scanner input) {
String choice;
do {
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("=============================");
System.out.print("请选择:");
choice = input.next();
switch (choice) {
case "1":
showGoodsList();
break;
case "2":
addGoods(input);
break;
case "3":
deleteGoods(input);
break;
case "4":
updateGoods(input);
break;
case "5":
break;
default:
System.out.println("输入有误,请重新选择!");
break;
}
} while(!choice.equals("5"));
}
//查看所有货物信息
public static void showGoodsList() {
if (goodsList.size() == 0) {
System.out.println("暂无商品信息!");
return;
}
System.out.println("编号\t名称\t价格\t库存数量");
for (Goods goods : goodsList) {
System.out.println(goods.getGoodsId() + "\t" + goods.getGoodsName() + "\t" + goods.getPrice() + "\t" + goods.getStock());
}
}
//添加新货物
public static void addGoods(Scanner input) {
System.out.print("请输入货物编号:");
String goodsId = input.next();
System.out.print("请输入货物名称:");
String goodsName = input.next();
System.out.print("请输入货物价格:");
double price = input.nextDouble();
System.out.print("请输入货物库存数量:");
int stock = input.nextInt();
Goods goods = new Goods(goodsId, goodsName, price, stock);
goodsList.add(goods);
System.out.println("添加货物成功!");
}
//删除已有货物
public static void deleteGoods(Scanner input) {
System.out.print("请输入要删除的货物编号:");
String goodsId = input.next();
boolean flag = false;
for (Goods goods : goodsList) {
if (goods.getGoodsId().equals(goodsId)) {
goodsList.remove(goods);
flag = true;
break;
}
}
if (flag) {
System.out.println("删除货物成功!");
} else {
System.out.println("货物编号不存在!");
}
}
//修改已有货物
public static void updateGoods(Scanner input) {
System.out.print("请输入要修改的货物编号:");
String goodsId = input.next();
boolean flag = false;
for (Goods goods : goodsList) {
if (goods.getGoodsId().equals(goodsId)) {
System.out.print("请输入新的货物名称:");
String goodsName = input.next();
System.out.print("请输入新的货物价格:");
double price = input.nextDouble();
System.out.print("请输入新的货物库存数量:");
int stock = input.nextInt();
goods.setGoodsName(goodsName);
goods.setPrice(price);
goods.setStock(stock);
flag = true;
break;
}
}
if (flag) {
System.out.println("修改货物成功!");
} else {
System.out.println("货物编号不存在!");
}
}
}
class Goods {
private String goodsId; //货物编号
private String goodsName; //货物名称
private double price; //货物价格
private int stock; //库存数量
public Goods(String goodsId, String goodsName, double price, int stock) {
this.goodsId = goodsId;
this.goodsName = goodsName;
this.price = price;
this.stock = stock;
}
public String getGoodsId() {
return goodsId;
}
public void setGoodsId(String goodsId) {
this.goodsId = goodsId;
}
public String getGoodsName() {
return goodsName;
}
public void setGoodsName(String goodsName) {
this.goodsName = goodsName;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getStock() {
return stock;
}
public void setStock(int stock) {
this.stock = stock;
}
}
```
这个示例中的 `Goods` 类中包含了货物的编号、名称、价格和库存数量等信息,你可以根据实际情况进行调整。在 `goodsManagement` 方法中,我们使用了 `switch` 语句来实现不同操作的菜单选择,包括查看所有货物信息、添加新货物、删除已有货物和修改已有货物。在添加新货物和修改已有货物时,我们通过输入货物的编号、名称、价格和库存数量等信息来创建或更新货物对象,并将其添加到 `goodsList` 中。在删除已有货物时,我们根据货物的编号来查找并删除相应的货物对象。在查看所有货物信息时,我们遍历 `goodsList` 中的所有货物对象,并输出它们的编号、名称、价格和库存数量等信息。
阅读全文