java divide是什么,讓我們一起了解一下?
divide是在BigDecimal中的用來做除法的運算,在java.math.BigDecimal.divide返回一個BigDecimal,其值為(this/除數),其標度是this.scale()。如果必須執行舍入,以產生一個結果與給定的比例,將指定的舍入模式被應用。
BigDecimal中divide用來做除法的運算,那么它的實現方法是什么?
其中有這么一個方法:
public BigDecimal divide(BigDecimal divisor,int scale, int roundingMode)
1、第一個參數是除數,第二個參數代表保留幾位小數,第三個代表的是使用的模式。
BigDecimal.ROUND_DOWN:直接省略多余的小數,比如1.28如果保留1位小數,得到的就是1.2 BigDecimal.ROUND_UP:直接進位,比如1.21如果保留1位小數,得到的就是1.3 BigDecimal.ROUND_HALF_UP:四舍五入,2.35保留1位,變成2.4 BigDecimal.ROUND_HALF_DOWN:四舍五入,2.35保留1位,變成2.3
后邊兩種的區別就是如果保留的位數的后一位如果正好是5的時候,一個舍棄掉,一個進位。
2、BigDecimal.setScale()方法用于格式化小數點。
setScale(1)表示保留一位小數,默認用四舍五入方式? setScale(1,BigDecimal.ROUND_DOWN)直接刪除多余的小數位,如2.35會變成2.3? setScale(1,BigDecimal.ROUND_UP)進位處理,2.35變成2.4? setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35變成2.4 setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五入,2.35變成2.3,如果是5則向下舍
實戰操作:Java BigDecimal divide()用法及代碼示例
java.math.BigDecimal.divide(BigDecimal divisor)用于計算兩個BigDecimal的商。商由(this /除數)給出。此方法對當前的BigDecimal進行操作,調用該方法并將BigDecimal作為參數傳遞。
所以Java中有五種重載的除法方法重載,如下所示:
1、divide(BigDecimal divisor)。
2、divide(BigDecimal divisor,MathContext mc)。
3、divide(BigDecimal divisor,RoundingMode roundingMode)。
4、divide(BigDecimal divisor,整數比例,RoundingMode roundingMode)。
5、divide(BigDecimal divisor,int roundingMode)。
下面的程序用于說明BigDecimal的divide()方法:
//?Java?program?to?demonstrate //?divide()?method?of?BigDecimal import?java.math.BigDecimal; public?class?GFG?{undefined public?static?void?main(String[]?args) {undefined //?BigDecimal?object?to?store?the?result BigDecimal?res; //?For?user?input //?Use?Scanner?or?BufferedReader //?Two?objects?of?String?created //?Holds?the?values String?input1 =?"204800000"; String?input2 =?"256"; //?Convert?the?string?input?to?BigDecimal BigDecimal?a =?new?BigDecimal(input1); BigDecimal?divisor =?new?BigDecimal(input2); //?Using?divide()?method res?=?a.divide(divisor); //?Display?the?result?in?BigDecimal System.out.println(res); } }
以上就是小編今天的分享了,希望可以幫助到大家。