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());
始终标记您的编程语言。这可能就是为什么你对这篇文章的浏览量很少的原因