Java Programming Goals In this lab students continue to write programs using mul
ID: 3804256 • Letter: J
Question
Java Programming
Goals
In this lab students continue to write programs using multiple classes. By the end of this lab, students should be able to
Write classes that use arrays and ArrayLists of objects as instance variables
Write methods that process arrays and ArrayLists of objects
Write getter and setter methods for instance variables
Write methods using object parameters and primitive types
Question-
This program uses the StockHolding class that we wrote in the lab for Writing Classes.
Write a class PortfolioList. A PortfolioList object maintains a portfolio of StockHolding objects. A PortfolioList
keeps an ArrayList<StockHolding>
has a no-argument constructor
Explanation / Answer
import java.util.ArrayList;
import java.util.List;
public class PortFolioList {
private List<StockHolding> stockHoldingList;
public List<StockHolding> getStockHoldingList() {
return stockHoldingList;
}
public void setStockHoldingList(List<StockHolding> stockHoldingList) {
this.stockHoldingList = stockHoldingList;
}
public PortFolioList(){
stockHoldingList=new ArrayList<StockHolding>();
}
public void add(StockHolding stock){
stockHoldingList.add(stock);
}
public void remove(String ticker){
if(stockHoldingList != null && stockHoldingList.size()>0){
for(StockHolding stockHolding:stockHoldingList){
if(stockHolding.getTicker().equals(ticker)){
stockHoldingList.remove(stockHolding);
break;
}
}
}
}
public StockHolding find(String ticker){
if(stockHoldingList != null && stockHoldingList.size()>0){
for(StockHolding stockHolding:stockHoldingList){
if(stockHolding.getTicker().equals(ticker)){
return stockHolding;
}
}
}
return null;
}
public String toString(){
StringBuilder toStringValue=new StringBuilder();
for(StockHolding stockHolding:stockHoldingList){
toStringValue.append(stockHolding.getTicker()+" ");
}
return toStringValue.toString();
}
}
public class StockHolding {
private String ticker;
public String getTicker() {
return ticker;
}
public void setTicker(String ticker) {
this.ticker = ticker;
}
}
public class PortFolioDriver {
public static void main(String[] args){
PortFolioList portFolioListFirst=new PortFolioList();
PortFolioList portFolioListSecond=new PortFolioList();
StockHolding stockHolding1=new StockHolding("stockHolding1");
StockHolding stockHolding2=new StockHolding("stockHolding2");
portFolioListFirst.add(stockHolding1);
portFolioListFirst.add(stockHolding2);
StockHolding stockHolding3=new StockHolding("stockHolding3");
StockHolding stockHolding4=new StockHolding("stockHolding4");
StockHolding stockHolding5=new StockHolding("stockHolding5");
StockHolding stockHolding6=new StockHolding("stockHolding6");
portFolioListSecond.add(stockHolding3);
portFolioListSecond.add(stockHolding4);
portFolioListSecond.add(stockHolding5);
portFolioListSecond.add(stockHolding6);
if(portFolioListFirst.getStockHoldingList() != null && portFolioListFirst.getStockHoldingList().size()>0){
for(StockHolding stockHolding:portFolioListFirst.getStockHoldingList()){
System.out.println(stockHolding.getTicker());
}
}
else{
System.out.println("No Entries Present in First POrtfolio List");
}
if(portFolioListFirst.getStockHoldingList() != null && portFolioListFirst.getStockHoldingList().size()>0){
for(StockHolding stockHolding:portFolioListSecond.getStockHoldingList()){
System.out.println(stockHolding.getTicker());
}
}
else{
System.out.println("No Entries Present in Seconfd Portfolio List");
}
String toStringValue=portFolioListSecond.toString();
System.out.println(toStringValue);
portFolioListSecond.remove("stockHolding3");
portFolioListSecond.remove("stockHolding4");
portFolioListSecond.remove("stockHolding5");
portFolioListSecond.remove("stockHolding6");
if(portFolioListSecond.getStockHoldingList() != null && portFolioListSecond.getStockHoldingList().size()>0){
for(StockHolding stockHolding:portFolioListSecond.getStockHoldingList()){
System.out.println(stockHolding.getTicker());
}
}
else{
System.out.println("No Entries Present in Second Portfolio List");
}
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.