昨天忙着给女儿做手工没有更新,今天写了两个小时。纠结仓库存储的增删改查的表现形式。复习了数组的操作,复习了get()和set()方法。是今天的收获。关于游戏今天的主要进展是完成了仓库类的方法编写,完成了产品类的方法编写。
package code;
//仓库类,包含入库出库操作。
public class Storage {
// 用产品类数组处理仓库存储
Products[] storageProduct = new Products[20];
public Storage() {
}
//库存增加的操作,即收获。这里主要是要分析,已有的农产品只增加数量,没有的才增加一个数组元素。如果中间有空的产品对象(因为出库操作变空),优先填补空的位置。
public void addStorage(Products pdcts) {
int i = storageProduct.length;
int j = 0;
int num = 0;
for (; j < i; j++) {
if (storageProduct[j].getProductName() == pdcts.getProductName()) {
num = storageProduct[j].getProductNum() + pdcts.getProductNum();
storageProduct[j].setProductNum(num);
break;
}
}
if (j == i) {
for (j = 0; j < i; j++) {
if (storageProduct[j].getProductName() == null) {
storageProduct[j] = pdcts;
break;
}
}
}
if (j == i)
storageProduct[i] = pdcts;
}
//出库操作,即卖出。如果卖剩0个,即要替换成无参构造函数对象。
public void minusStorage(Products pdcts) {
int i = storageProduct.length;
int num = 0;
for (int j = 0; j <= i; j++) {
if (storageProduct[j].getProductName() == pdcts.getProductName())
num = storageProduct[j].getProductNum() - pdcts.getProductNum();
if (num == 0)
storageProduct[j] = new Products();
else
storageProduct[j].setProductNum(num);
}
}
}
package code;
//代表农产品的类,主要是包含名称和数量两个要素,私有化,使用了get和set方法
public class Products {
private String productsName;
private int productsNum;
public Products(String name, int num) {
productsName = name;
productsNum = num;
}
public Products() {
}
public void minusproduct(String name,int num) {
//销售农产品的方法,暂时不用在这里。
}
public void demonstrateproduct() {
//显示有多少农产品,这个功能应该移去仓库类。
}
public String getProductName() {
return productsName;
}
public int getProductNum() {
return productsNum;
}
public void setProductName(String str) {
productsName = str;
}
public void setProductNum(int num) {
productsNum = num;
}
}
忙了半天才发现没写多少代码,实现的功能更是少的可怜。继续加油吧。