Java - Stock Market Anxiety Lab stocks1.txt contents: Apple,AAPL,152.70 Alphabet
ID: 3800489 • Letter: J
Question
Java - Stock Market Anxiety Lab
stocks1.txt contents:
Apple,AAPL,152.70
Alphabet,GOOGL,873.96
IBM,IBM,194.37
Microsoft,MSFT,65.67
Oracle,ORCL,62.82
Explanation / Answer
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Stock {
public String companyName;
public String stockSymbol;
public double stockPrice;
static Stock[] stocks=new Stock[100];
static Stock[] updatestocks=new Stock[100];
public Stock(String companyName, String stockSymbol, double stockPrice) {
this.companyName = companyName;
this.stockSymbol = stockSymbol;
this.stockPrice = stockPrice;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
public String getStockSymbol() {
return stockSymbol;
}
public void setStockSymbol(String stockSymbol) {
this.stockSymbol = stockSymbol;
}
public double getStockPrice() {
return stockPrice;
}
public void setStockPrice(double stockPrice) {
this.stockPrice = stockPrice;
}
public String toString() {
return "Stock [companyName=" + companyName + ", stockSymbol="
+ stockSymbol + ", stockPrice=" + stockPrice + "]";
}
public static Stock[] updatestockPrices(){
for(int i=0;i<stocks.length;i++)
{
if(stocks[i]!=null)
{
updatestocks[i]=stocks[i];
double stockprice=updatestocks[i].getStockPrice();
double updateprice=stockprice*0.3;
double rounduptotwodecimal=(double)Math.round(updateprice*100)/100;
System.out.println(rounduptotwodecimal);
updatestocks[i].setStockPrice(rounduptotwodecimal);
}
}
return updatestocks;
}
public static void main(String[] args) throws IOException {
try {
BufferedReader reader=new BufferedReader(new FileReader(new File("D:\stocks.txt")));
String line="";
int count=0;
while((line=reader.readLine())!=null)
{
String[] words=line.split(",");
String companyName=words[0];
String stockSymbol=words[1];
double stockPrice=Double.parseDouble(words[2]);
Stock stock=new Stock(companyName, stockSymbol, stockPrice);
stocks[count]=stock;
count++;
}
} catch (FileNotFoundException e) {
System.out.println("file is not found");
}catch(IOException e)
{
System.out.println("error occured while reading the file");
}
//to write the stocks into file before update
FileWriter writer=new FileWriter(new File("D:\stocks1.txt"));
for(int i=0;i<stocks.length ;i++)
{
if(stocks[i]!=null)
{
writer.write(stocks[i].toString());
writer.flush();
writer.write(" ");
}
}
//after updating
Stock[] stockslist=updatestockPrices();
FileWriter writer1=new FileWriter(new File("D:\stocks1.txt"));
for(int i=0;i<stockslist.length ;i++)
{
if(stockslist[i]!=null)
{
writer1.write(stockslist[i].toString());
writer1.flush();
writer1.write(" ");
}
}
}
}
output
//before updating
Stock [companyName=Apple, stockSymbol=AAPL, stockPrice=45.81]
Stock [companyName=Alphabet, stockSymbol=GOOGL, stockPrice=262.19]
Stock [companyName=IBM, stockSymbol=IBM, stockPrice=58.31]
Stock [companyName=Microsoft, stockSymbol=MSFT, stockPrice=19.7]
Stock [companyName=Oracle, stockSymbol=ORCL, stockPrice=18.85]
//after updating
Stock [companyName=Apple, stockSymbol=AAPL, stockPrice=45.6]
Stock [companyName=Alphabet, stockSymbol=GOOGL, stockPrice=261.9]
Stock [companyName=IBM, stockSymbol=IBM, stockPrice=58.19]
Stock [companyName=Microsoft, stockSymbol=MSFT, stockPrice=19.5]
Stock [companyName=Oracle, stockSymbol=ORCL, stockPrice=18.59]
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.