This program uses a StockHolding class Write a class Portfol

This program uses a StockHolding class


Write a class PortfolioList. A PortfolioList object maintains a portfolio of StockHolding objects. A PortfolioList


keeps an ArrayList<StockHolding>


has a no-argument constructor

// // // //

StockHolding class

public class StockHolding {
   private String m_ticker;
   private int m_numShares;
   private double m_initialSharePrice;
   private double m_currentSharePrice;
   public StockHolding(String ticker, int numberShares, double initialPrice) {

       m_ticker = ticker;
       m_numShares = numberShares;
       m_initialSharePrice = initialPrice;
       m_currentSharePrice = initialPrice;

   }
   public double getCurrentValue() {
       return m_numShares * getCurrentSharePrice();
   }

   public double getInitialCost() {
       return m_numShares * getInitialSharePrice();
   }
   public double getCurrentProfit() {
       return getCurrentValue() - getInitialCost();
   }
   public double getCurrentSharePrice() {
       return m_currentSharePrice;
   }
   public void setCurrentSharePrice(double currentSharePrice) {
       m_currentSharePrice = currentSharePrice;
   }
   public String getTicker() {
       return m_ticker;
   }
   public int getShares() {
       return m_numShares;
   }
   public double getInitialSharePrice() {
       return m_initialSharePrice;
   }
   public String toString() {
       return \"Stock \" + getTicker() + \", \" + getShares() + \", shares bought at \" + getInitialSharePrice()
       + \", current price \" + getCurrentSharePrice();
   }
}

Solution

PortfolioList.java

import java.util.ArrayList;


public class PortfolioList {
   ArrayList<StockHolding> list = new ArrayList<StockHolding>();
   public PortfolioList(){
      
   }
   public void add(StockHolding stock){
       list.add(stock);
   }
   public void remove(String ticker){
       for(StockHolding s: list){
           if(s.getTicker().equals(ticker)){
               list.remove(s);
           }
           break;
       }
   }
   public StockHolding find(String ticker) {
       for(StockHolding s: list){
           if(s.getTicker().equals(ticker)){
               return s;
           }
       }
       return null;
   }
   public String toString() {
       String str = \"\";
       for(StockHolding s: list){
           str = str + s.toString()+\"\ \";
       }
       return str;
   }
}

PortfolioDriver.java


public class PortfolioDriver {

   public static void main(String[] args) {
       PortfolioList p1 = new PortfolioList();
       PortfolioList p2 = new PortfolioList();
       p1.add(new StockHolding(\"AAPL\",3, 100 ));
       p1.add(new StockHolding(\"AAPP\",2, 200 ));
      
       p2.add(new StockHolding(\"ABCD\",3, 500 ));
       p2.add(new StockHolding(\"EFGH\",6, 600 ));
       p2.add(new StockHolding(\"IJKL\",7, 700 ));
       p2.add(new StockHolding(\"MNOP\",8, 800 ));
       System.out.println(p1.toString());
       System.out.println(\"--------------------------------\");
       System.out.println(p2.toString());

       StockHolding s = p1.find(\"AAPP\");
       System.out.println(s.toString());
       StockHolding s1 = p2.find(\"IJKL\");
       System.out.println(s1.toString());
       System.out.println(\"-------Removed second portfolio all objects---------------\");
       p2.remove(\"ABCD\");
       p2.remove(\"EFGH\");
       p2.remove(\"IJKL\");
       p2.remove(\"MNOP\");
       System.out.println(p2.toString());

      
   }

}

Output:

Stock AAPL, 3, shares bought at 100.0, current price 0.0
Stock AAPP, 2, shares bought at 200.0, current price 0.0

--------------------------------
Stock ABCD, 3, shares bought at 500.0, current price 0.0
Stock EFGH, 6, shares bought at 600.0, current price 0.0
Stock IJKL, 7, shares bought at 700.0, current price 0.0
Stock MNOP, 8, shares bought at 800.0, current price 0.0

Stock AAPP, 2, shares bought at 200.0, current price 0.0
Stock IJKL, 7, shares bought at 700.0, current price 0.0
-------Removed second portfolio all objects---------------

This program uses a StockHolding class Write a class PortfolioList. A PortfolioList object maintains a portfolio of StockHolding objects. A PortfolioList keeps
This program uses a StockHolding class Write a class PortfolioList. A PortfolioList object maintains a portfolio of StockHolding objects. A PortfolioList keeps
This program uses a StockHolding class Write a class PortfolioList. A PortfolioList object maintains a portfolio of StockHolding objects. A PortfolioList keeps

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site