public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Account Lin = new Account("LIN");
Lin.apply("零钱宝", 1000);
Lin.apply("余额宝",1000);
Lin.printAll();
System.out.println("");
Lin.redeem("余额宝",1000);
Lin.printAll();
}
}
import java.util.ArrayList;
public class Account
{
String userID;
ArrayList<HodMoneyFund>fund;
public Account(String userID) {
super();
this.userID = userID;
fund = new ArrayList<HodMoneyFund>();
}
public int apply(String fundName,int amount)
{
for (HodMoneyFund hodMoneyFund : fund) {
if(hodMoneyFund.IMF_number.equals(fundName))
{
hodMoneyFund.add(amount);
return 1;
}
}
HodMoneyFund hodMoneyFund = new HodMoneyFund(fundName,amount);
fund.add(hodMoneyFund);
return 0;
}
public boolean redeem(String fundName,int amount) {
for (HodMoneyFund hodMoneyFund : fund) {
if(hodMoneyFund.IMF_number.equals(fundName))
{
if(hodMoneyFund.getAmountOfPossession()<amount)
return false;
else if(hodMoneyFund.getAmountOfPossession()==amount)
{
fund.remove(hodMoneyFund);
return true;
}
else
{
hodMoneyFund.sub(amount);
return true;
}
}
}
return false;
}
public void printAll()
{
for (HodMoneyFund hodMoneyFund : fund) {
hodMoneyFund.print();
}
}
}
public class HodMoneyFund {
String IMF_number;
private int amountOfPossession;
public HodMoneyFund(String iMF_number, int amountOfPossession) {
super();
IMF_number = iMF_number;
if(amountOfPossession<0)
amountOfPossession=0;
this.amountOfPossession = amountOfPossession;
}
public void sub(int num)
{
amountOfPossession-=num;
}
public void add(int num)
{
amountOfPossession+=num;
}
public void print()
{
System.out.println(IMF_number +":"+ amountOfPossession);
}
public String getIMF_number() {
return IMF_number;
}
public int getAmountOfPossession() {
return amountOfPossession;
}
}