java - 如何使用数组自动生成 ID?以及如何为每个货运订单创建货运状态?
问题描述
所以我有一个任务要求我编程和创建货运 ID 并更新每个新订单的状态。
货运 ID:这应该是使用以下简单算法自动生成的唯一编号。
• 使用数字“1939”作为第一个货运编号。为下一次运费将其增加 1。
货运状态:可以是以下代码之一:“D”、“P”或“W”。“D”:送达目的地 “P”:处理中 “W”:在仓库等待送达。
创建新货运单时,其初始状态应记录为“W”。
我尝试了一些方法,但我似乎无法理解我应该如何自动生成和增加货运 ID 以及创建货运状态。
public void freightID()
{
int [] freightID = {1939,1939,1939,1939,1939};
for (int i = 0; i<ID_SIZE; i++)
{
int answer = ++freightID[0];
System.out.println(freightID[i]*1);
}
}
我知道这是完全错误的,但我只是想展示我尝试过的东西。
解决方案
因此,据我了解您的任务,您必须创建一个具有“货运 ID”和“状态”属性的“订单”类。第一个订单将从 ID 1939 开始,每个新订单都需要增加这个数字。创建此类订单状态为 W。创建订单后,您希望有可能更改状态。如果那是正确的,我有适合你的解决方案:
public class Order {
public Order() {
this.freightStatus = freightStatus.W;
this.freightID = startID;
startID++;
}
private static int startID = 1939;
private int freightID;
private FreightStatus freightStatus;
enum FreightStatus {
D, P, W
}
public void setFreightStatus(FreightStatus freightstatus) {
this.freightStatus = freightstatus;
}
public FreightStatus getFreightStatus() {
return this.freightStatus;
}
public int getFreightID() {
return this.freightID;
}
public static void main(String args[]) {
Order orders[] = new Order[5];
for (int counter = 0; counter < orders.length; counter++) {
orders[counter] = new Order();
}
for (Order order : orders) {
System.out.println(order.getFreightID() + " " + order.freightStatus);
}
for (int counter = 0; counter < orders.length; counter++) {
orders[counter].setFreightStatus(FreightStatus.D);
}
for (Order order : orders) {
System.out.println(order.getFreightID() + " " + order.freightStatus);
}
}
}
我希望这就是你所要求的,如果不是,请澄清你的问题。
推荐阅读
- cmake - 通过链接链接外部库创建库
- microsoft-dynamics - 有没有办法在 Dynamics 365 中禁用“高级设置”选项?
- vue.js - 用 Vuex 初始化变量
- apache-spark - 在结构化流中读取文件时检查 Spark 中是否存在列
- format - 自动完成 html 标记是否有括号扩展?
- c# - 如何解决“根据验证程序,远程证书无效”[FTP 中的错误]
- xamarin.ios - 适用于 iOS 的 Xamarin.Forms 附加文件夹,用于带后缀的日志
- python - 如何在 django-filter 中使用 DateTimeFilter,并传递一个自定义的“方法”参数?
- vue.js - 在 Nuxt 应用程序中导入 scss 模块
- database - CockroachDB 是否实现了行级安全性?