java divide是什么,讓我們一起了解一下?
divide是在BigDecimal中的用來(lái)做除法的運(yùn)算,在java.math.BigDecimal.divide返回一個(gè)BigDecimal,其值為(this/除數(shù)),其標(biāo)度是this.scale()。如果必須執(zhí)行舍入,以產(chǎn)生一個(gè)結(jié)果與給定的比例,將指定的舍入模式被應(yīng)用。
BigDecimal中divide用來(lái)做除法的運(yùn)算,那么它的實(shí)現(xiàn)方法是什么?
其中有這么一個(gè)方法:
public BigDecimal divide(BigDecimal divisor,int scale, int roundingMode)
1、第一個(gè)參數(shù)是除數(shù),第二個(gè)參數(shù)代表保留幾位小數(shù),第三個(gè)代表的是使用的模式。
BigDecimal.ROUND_DOWN:直接省略多余的小數(shù),比如1.28如果保留1位小數(shù),得到的就是1.2 BigDecimal.ROUND_UP:直接進(jìn)位,比如1.21如果保留1位小數(shù),得到的就是1.3 BigDecimal.ROUND_HALF_UP:四舍五入,2.35保留1位,變成2.4 BigDecimal.ROUND_HALF_DOWN:四舍五入,2.35保留1位,變成2.3
后邊兩種的區(qū)別就是如果保留的位數(shù)的后一位如果正好是5的時(shí)候,一個(gè)舍棄掉,一個(gè)進(jìn)位。
2、BigDecimal.setScale()方法用于格式化小數(shù)點(diǎn)。
setScale(1)表示保留一位小數(shù),默認(rèn)用四舍五入方式? setScale(1,BigDecimal.ROUND_DOWN)直接刪除多余的小數(shù)位,如2.35會(huì)變成2.3? setScale(1,BigDecimal.ROUND_UP)進(jìn)位處理,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則向下舍
實(shí)戰(zhàn)操作:Java BigDecimal divide()用法及代碼示例
java.math.BigDecimal.divide(BigDecimal divisor)用于計(jì)算兩個(gè)BigDecimal的商。商由(this /除數(shù))給出。此方法對(duì)當(dāng)前的BigDecimal進(jìn)行操作,調(diào)用該方法并將BigDecimal作為參數(shù)傳遞。
所以Java中有五種重載的除法方法重載,如下所示:
1、divide(BigDecimal divisor)。
2、divide(BigDecimal divisor,MathContext mc)。
3、divide(BigDecimal divisor,RoundingMode roundingMode)。
4、divide(BigDecimal divisor,整數(shù)比例,RoundingMode roundingMode)。
5、divide(BigDecimal divisor,int roundingMode)。
下面的程序用于說(shuō)明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); } }
以上就是小編今天的分享了,希望可以幫助到大家。