java - 如何创建从商店提款和送货到商店的方法

标签 java

我正在自学java,我想获得关于我自己正在做的锻炼的帮助。 该类称为 Product,用于表示小公司销售的产品。

应该可以存储有关每个产品的以下信息。 该类应具有以下方法:

  • 构造函数
  • 返回商店中商品单位的方法
  • 向商店送货的方法(增加该产品的数量)
  • 从商店退出的方法(减少该产品的数量)

请注意,如果其中一种方法更改了订单点下方的存储项目,则应打印一条消息。元素数量也不应该为负数。

我的方法有问题。请查看我的代码并给我一些提示。我将感谢所有的回应。 谢谢。

这是我的程序:

  public class Product {
        private int productNumber;
        private String productName;
        private float price;
        private int orderPoint;
        private int unitsInStore;
        private String proDescription;

        public Product(int num, String name, float price, int order, int units, String description){
            this.productNumber = num;
            this.productName = name;
            this.price = price;
            this.orderPoint = order;
            this.unitsInStore = units;
            this.proDescription = description;
        }

        public int getProductNumber() {
            return productNumber;
        }

        public void setProductNumber(int productNumber) {
            this.productNumber = productNumber;
        }

        public String getProductName() {
            return productName;
        }

        public void setProductName(String productName) {
            this.productName = productName;
        }

        public float getPrice() {
            return price;
        }

        public void setPrice(float price) {
            this.price = price;
        }

        public int getOrderPoint() {
            return orderPoint;
        }

        public void setOrderPoint(int orderPoint) {
            this.orderPoint = orderPoint;
        }

        // a method returns the units in store
        public int getUnitsInStore() {
            return unitsInStore;
        }

        public void setUnitsInStore(int unitsInStore) {
            this.unitsInStore = unitsInStore;
        }

        public String getProDescription() {
            return proDescription;
        }

        public void setProDescription(String proDescription) {
            this.proDescription = proDescription;
        }

        public int deliveranceToStore(int store){
          unitsInStore = unitsInStore + store;
         return unitsInStore ++ ;
}
       public int withdrawal(int store){
        unitsInStore = store - unitsInStore;
return unitsInStore --;
}
    }

最佳答案

deliveranceToStore 方法不正确。为什么要递归调用该方法?

该方法可以简单地是:

public int deliveranceToStore(int store) {
    unitsInStore = unitsInStore + store;
    return unitsInStore;
}

如果不需要通过此调用返回存储的单位数量,则应将返回类型设置为 void(即,如果更新计数就足够了):

public void deliveranceToStore(int store) {
    unitsInStore = unitsInStore + store;
}

对于提款,您需要更新 unitsInStore 的类似策略:

public void withdrawal(int units) {
    if(unitsInStore - units >= 0) {
        unitsInStore = unitsInStore - units;
    } else {
        System.out.println("Unable to withdraw. Insufficient units in store.");
    }
}

您还可以让 withdrawal 方法返回一个 boolean 来判断提款操作是否成功。在这种情况下,该方法可能如下所示:

public boolean withdrawal(int units) {
    if(unitsInStore - units >= 0) {
        unitsInStore = unitsInStore - units;
        return true;
    } else {
        System.out.println("Unable to withdraw. Insufficient units in store.");
        return false;
    }
}

关于java - 如何创建从商店提款和送货到商店的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18298402/

相关文章:

java - 我想要为我的 Java 编码 Telegram 机器人提供粗体文本,如何实现?

java - 异常 - java.lang.NoClassDefFoundError

java - Spring 版本自动更改为 3.0.5.RELEASE 尽管我指定了 3.1.0

java - java中无法捕获异常

java - 如何为在 Java 中启动的 nogui 进程创建控制台窗口?

java - 使用 Zookeeper 而不仅仅是数据库来管理分布式系统的目的是什么?

java - "java.sql.SQLException: After end of result set"错误

java - JUnit 测试 assertEquals() 和 Assert.assertEquals() 的区别

java - 使用 Log4j 的日期日志文件

java - Wiquery DatePicker显示时间,验证失败