Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数组列表平均值_Java_Arraylist_Average - Fatal编程技术网

Java 数组列表平均值

Java 数组列表平均值,java,arraylist,average,Java,Arraylist,Average,我试图找出如何让最大和最小账户也打印其账号、余额和平均交易金额 我试过各种装束,但一无所获 import java.util.ArrayList; import java.util.Scanner; public class BankAccount { private int AccountNumber; public int getAccountNumber() { return AccountNumber; } private

我试图找出如何让最大和最小账户也打印其账号、余额和平均交易金额

我试过各种装束,但一无所获

import java.util.ArrayList;
import java.util.Scanner;

public class BankAccount {


    private int AccountNumber;
    public int getAccountNumber()
    {
        return AccountNumber;
    }

    private double Balance;
    public double getBalance()
    {
        return Balance; 
    }

    private ArrayList<Double> transactions = new ArrayList<Double>();

    public void Deposit(double Balance)
    {
        transactions.add(Balance);
        this.Balance = this.Balance + Balance; 
    }

    public void Withdraw(double Balance)
    {
        transactions.add(-Balance);
        this.Balance = this.Balance - Balance;
    }

    public BankAccount(int initialAccountNumber, double initialBalance)
    {
        this.Balance = initialBalance;
        this.AccountNumber = initialAccountNumber;
        transactions.add(initialBalance);
    }

    public double getAverage()
    {
        double sum = 0; 
        for (double element : transactions)
        {
            sum = sum + Math.abs(element);
        }

        double Average = sum / transactions.size();
        return Average;
    }   

    }


---

    import java.util.ArrayList;

    public class Bank {

        private ArrayList<BankAccount> accounts = new ArrayList<BankAccount>();


        public void MakeAccount(int initialAccountNumber, double initialBalance)
        {
             BankAccount NewAcc = new BankAccount(initialAccountNumber, initialBalance);
             accounts.add(NewAcc);  
        }


        public BankAccount FindLarAcc(int initialAccountNumber, double initialBalance)
        {
            BankAccount largest = accounts.get(0);

            for (int i = 1; i < accounts.size(); i++)
            {
                BankAccount a = accounts.get(i);
                if (a.getBalance() > largest.getBalance())
                    largest = a;
            }
             return largest;
                    }


        public BankAccount FindLowAcc(int initialAccountNumber, double initialBalance)
        {
            BankAccount smallest = accounts.get(0);

            for (int i = 1; i < accounts.size(); i++)
            {
                BankAccount a = accounts.get(i);
                if (a.getBalance() < smallest.getBalance())
                    smallest = a;
            }
             return smallest;
                    }

        public BankAccount FindAcc(int initialAccountNumber)
        {
            for (BankAccount a: accounts)
            {
                if (a.getAccountNumber() == initialAccountNumber)
                    return a;
            }
            return null;
        }

     }


---

    import java.util.Scanner;

    public class BankTester {

    public static void main(String[] args){

    Scanner in = new Scanner (System.in);
    /**int AccountNumber = 0;*/
    double Balance = 0;
    double Amount = 0;

    Bank Bank1 = new Bank();


    boolean done = false;
    while (!done)
    {
        System.out.println("Enter an Account Number to begin, enter -1 to quit: ");
        int AccountNumber = in.nextInt();
        if (AccountNumber == -1)
        {
            done = true;
        } else {

            System.out.println("Now enter a Balance: ");
            Balance = in.nextDouble();
            Bank1.MakeAccount(AccountNumber, Balance);
            BankAccount B = Bank1.FindAcc(AccountNumber);

            System.out.println("How much would you like to deposit? ");
            Amount = in.nextDouble();
            B.Deposit(Amount);

            System.out.println("How much would you like to withdrawl? ");
            Amount = in.nextDouble();
            B.Withdraw(Amount);


        }



        BankAccount Max = Bank1.FindLarAcc(AccountNumber, Balance);
        BankAccount Min = Bank1.FindLowAcc(AccountNumber, Balance);

        /**
         * Print & Compute Average
         */


        System.out.println("Account " + Min.getAccountNumber() +                    
                " has the smallest balance. ");

        System.out.println("Account " + Max.getAccountNumber() + 
                " has the largest balance. ");




        }

    }

}
import java.util.ArrayList;
导入java.util.Scanner;
公营银行帐户{
私人国际帐户号码;
public int getAccountNumber()
{
返回帐号;
}
私人双平衡;
公共双getBalance()
{
收益余额;
}
私有ArrayList事务=新建ArrayList();
公共无效存款(双倍余额)
{
交易。添加(余额);
this.Balance=this.Balance+Balance;
}
公开作废撤销(双倍余额)
{
交易。加上(-余额);
this.Balance=this.Balance-Balance;
}
公共银行账户(int initialAccountNumber,双初始余额)
{
这个平衡=初始平衡;
this.AccountNumber=初始AccountNumber;
交易。添加(初始余额);
}
公共双平均值()
{
双和=0;
for(双元素:事务)
{
sum=sum+Math.abs(元素);
}
双倍平均=总和/交易量。大小();
收益率平均值;
}   
}
---
导入java.util.ArrayList;
公营银行{
私有ArrayList帐户=新建ArrayList();
公共作废MakeCount(int initialAccountNumber,双初始余额)
{
BankAccount NewAcc=新银行账户(初始账户编号、初始余额);
账户。新增(新账户);
}
公共银行账户FindLarAcc(int initialAccountNumber,双初始余额)
{
BankAccount最大=accounts.get(0);
对于(int i=1;i最大的.getBalance())
最大=a;
}
回报最大;
}
公共银行账户FindLowAcc(int initialAccountNumber,双初始余额)
{
BankAccount最小值=accounts.get(0);
对于(int i=1;i
对于那些可能有同样问题的人……我找到了答案

顺便说一句,这属于BankTester类

    System.out.println("Account " + Min.getAccountNumber() +                    
            " has the smallest balance of, " + Min.getBalance() + 
            " and a average transaction of, " + Min.getAverage());


    System.out.println("Account " + Max.getAccountNumber() + 
            " has the largest balance of, " + Max.getBalance() + 
            " and a average transaction of, " + Max.getAverage());

始终标记您的编程语言。这可能就是为什么你对这篇文章的浏览量很少的原因