From 0771753a73b567be8c296b6a2ed8df78a72598a9 Mon Sep 17 00:00:00 2001 From: Nikollai Date: Wed, 8 Apr 2026 11:23:54 +0200 Subject: [PATCH] Added getNetWorth methods to player and portfolio --- src/main/java/millions/Player.java | 6 ++++++ src/main/java/millions/Portfolio.java | 11 +++++++++++ 2 files changed, 17 insertions(+) diff --git a/src/main/java/millions/Player.java b/src/main/java/millions/Player.java index 6c01c2c..e9f541a 100644 --- a/src/main/java/millions/Player.java +++ b/src/main/java/millions/Player.java @@ -39,6 +39,12 @@ public void withdrawMoney(BigDecimal amount) { this.money = this.money.subtract(amount); } + public BigDecimal getNetWorth() { + BigDecimal netWorth = this.money; + netWorth = netWorth.add(this.portfolio.getNetWorth()); + return netWorth; + } + public String getName() { return this.name; } diff --git a/src/main/java/millions/Portfolio.java b/src/main/java/millions/Portfolio.java index e6fe889..35447fb 100644 --- a/src/main/java/millions/Portfolio.java +++ b/src/main/java/millions/Portfolio.java @@ -1,5 +1,8 @@ package millions; +import millions.calculators.SaleCalculator; + +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -28,6 +31,14 @@ public List getShares(String symbol) { .toList(); } + public BigDecimal getNetWorth() { + BigDecimal netWorth = new BigDecimal(0); + for (Share share : shares) { + netWorth = netWorth.add(new SaleCalculator(share).calculateTotal()); + } + return netWorth; + } + public boolean contains(Share share) { return this.shares.contains(share); }