代碼如下:
import?java.math.BigDecimal;import?java.math.RoundingMode;
public?class?Stock?{
private?String?symbol;
private?String?name;
private?double?previousClosingPrice;
private?double?currentPrice;
//?構造方法
public?Stock(String?symbol,?String?name)?{
this.symbol?=?symbol;
this.name?=?name;
}
//
public?double?getChangePercent()?{
return?(currentPrice?-?previousClosingPrice)?/?previousClosingPrice;
}
public?void?setPreviousClosingPrice(double?previousClosingPrice)?{
this.previousClosingPrice?=?previousClosingPrice;
}
public?void?setCurrentPrice(double?currentPrice)?{
this.currentPrice?=?currentPrice;
}
public?String?getSymbol()?{
return?symbol;
}
public?String?getName()?{
return?name;
}
public?static?void?main(String[]?args)?{
Stock?stock?=?new?Stock("Java",?"Sun?Mircro");
stock.setCurrentPrice(4.35);?//?當前價格
stock.setPreviousClosingPrice(4.5);//?前壹交易日價格
double?d?=?stock.getChangePercent();?//?價格浮動:?由於是double,下面的計算是N位小數
System.out.println("價格浮動:"?+?stock.getChangePercent());
//?處理下
BigDecimal?bd?=?new?BigDecimal(d?*?100);?//?乘個100,是為了看效果
bd?=?bd.setScale(2,?RoundingMode.HALF_UP);?//?設置2位小數,采用四舍五入
System.out.println("["?+?stock.getSymbol()?+?"]?"?+?stock.getName()?+?"?價格浮動:"?+?bd.toString()?+?"%");
}
}
親,如果回答滿意,親及時采納,妳的合作是我們回答的動力,謝謝!