java - 尝试将多个 double 添加到 java 中的数组

标签 java arrays

我正在尝试将购买列表添加到数组,然后能够根据数组中的 double 执行一些计算。我在尝试将购买添加到双阵列时遇到问题 这是我拥有的:

public abstract class Customer {

   protected String category;
   protected String acctNumber;
   protected String name;
   protected double[] purchases;
   protected static final double SALES_TAX_RATE = 0.08;

/**
*Reads in customer data.
*@param acctNumberIn customers account number.
*@param nameIn customers name.
*/   
   public Customer(String acctNumberIn, String nameIn) {

      acctNumber = acctNumberIn;
      name = nameIn;
      purchases = new double[0];

   }

在我遇到问题的地方添加购买方法:

public void addPurchases(double ... pur) {


      purchases = Arrays.copyOf(purchases, purchases.length + 1);
      int a = purchases.length;
      for (int i = 0; i < purchases.length; i++) {
         purchases[a] = pur;
         }


   }

最佳答案

问题是 pur 的类型是 double[]。因此,您需要创建一个新数组,其大小为 purchases + pur,并将 pur 的每个元素复制到 purchases 的末尾。

请尝试以下代码:

public void addPurchases(double ... pur) {
  int purchasesLength = purchases.length;
  int combinedLength = pur.length + purchasesLength;
  purchases = Arrays.copyOf(purchases, combinedLength);
  for (int i = purchasesLength, j = 0; i < combinedLength; i++, j++) {
     purchases[i] = pur[j];
  }
}

关于java - 尝试将多个 double 添加到 java 中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33643896/

相关文章:

java - Maven 构建和发布多个相互依赖的项目

java - 如何在Java中实现Pluggable Adapter设计模式

java - Spring Batch 重复调用某个项目的处理器

javascript - 添加到数组并打印出值 - 不打印数组值

java - JMockit : Inspect local variables of a method

Java 图像字节数组大小

C++:打印/分配简单数组打印乱码

c - 协调 C 中数组的声明和使用语法

Javascript::JSON 解析不接受换行符?

arrays - 在 MATLAB 中用两个值替换向量值