Java语言程序设计(基础篇)第10版 习题答案 Chapter9-2

  • Post author:
  • Post category:java


(股票类 Stock)遵照 9.2 节中 Circle 类的例子,设计一个名为 Stock 的类。这个类包括:

  • 一个名为 symbol 的字符串数据域表示股票代码。
  • 一个名为 name 的字符串数据域表示股票名字。
  • 一个名为 previousClosingPrice 的 double 型数据域,它存储的是前-

    一日的股票值。
  • 一个名为 currentPrice 的 double 型数据域,它存储的是当时的股票值。
  • 创建一支有特定代码和名字的股票的构造方法。
  • 一个名为 getChangePercent() 的方法,返回从 previousClosingPrice 变化到 currentPrice 的百分比。

    画出该类的 UML 图并实现这个类。编写一个测试程序,创建一个 Stock 对象,它的股票代码是 ORCL,股票名字为 Oracle Corporation ,前一日收盘价是 34.5 。设置新的当前值为 34.35 ,然后显示市值变化的百分比。


程序代码

public class Stock {
     String symbol;
     String name;
     double previousClosingPrice;
     double currentPrice;

    public Stock() {
        symbol="00000";
        name="java";
    }

    public Stock(String symbol,String name,double previousClosingPrice,double currentPrice) {
        this.symbol=symbol;
        this.name=name;
        this.previousClosingPrice=previousClosingPrice;
        this.currentPrice=currentPrice;
    }

    public double getChangePercent() {
        return (Math.max(previousClosingPrice, currentPrice) - Math.min(previousClosingPrice, currentPrice))/previousClosingPrice*100;
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Stock s=new Stock("ORCL","Oracle Corporation",34.5,34.35);
        System.out.println("Symbol:"+s.symbol);
        System.out.println("Name:"+s.name);
        System.out.println("PreviousClosingPrice:"+s.previousClosingPrice);
        System.out.println("CurrentPrice:"+s.currentPrice);
        System.out.println("ChangePercent:"+s.getChangePercent()+"%");
    }

}

运行结果:

Symbol:ORCL

Name:Oracle Corporation

PreviousClosingPrice:34.5

CurrentPrice:34.35

ChangePercent:0.434782608695648%

转载于:https://www.cnblogs.com/Asherspace/p/8849131.html