Paano I-round ang Doble sa dalawang Decimal Places sa Java

Paano I Round Ang Doble Sa Dalawang Decimal Places Sa Java



May posibilidad na kailangan mo lang ng dalawang decimal na lugar ng isang ginawang Double variable, sa ilang mga kaso, gaya ng kumakatawan sa mga unit ng currency. Karaniwang ginagamit ng mga programmer ang ' bilog() ” paraan upang i-round ang dalawang decimal na lugar upang matuklasan ang tinatayang mga halaga ng decimal na numero. Gayundin, ang mga desimal na halaga o mga numero ay karaniwang ni-round off kapag nagsasagawa ng mga pagkalkula upang gawing mas simple ang proseso.







Ang manwal na ito ay maglalarawan ng paraan sa Java para sa pag-round ng dobleng halaga sa dalawang decimal na lugar.



Paano Mag-round ng Doble sa dalawang Decimal Places sa Java?

Para sa pag-round ng dobleng halaga sa dalawang decimal na lugar, maaari mong gamitin ang:



  • round() na pamamaraan
  • BigDecimal na klase
  • klase ng DecimalFormat
  • NumberFormat klase
  • String format() na pamamaraan

Talakayin natin ang paggana ng mga pamamaraang ito nang paisa-isa.





Paraan 1: I-round ang Doble hanggang dalawang Decimal Places sa pamamagitan ng Paggamit ng Math.round() Method

Math.round() ” ay isang static na pamamaraan na kabilang sa klase ng Math. Bini-round nito ang mga decimal point sa pinakamalapit na buong numero. Para sa pag-round up sa 2 decimal na lugar, ang Math.round() method ay gumagamit ng “ (Doblevalue*100.0)/100.0 ” bilang argumento.

Syntax



Sundin ang ibinigay na syntax sa ibaba upang i-round ang value hanggang sa dalawang decimal na lugar gamit ang Math.round() method:

Math.ikot ( Doublevalue * 100.0 ) / 100.0

Halimbawa

Sa halimbawang ito, gagawa kami ng double type na variable na pinangalanang “ dbl ” na sinimulan ng sumusunod na halaga:

dobleng dbl = 5211.1246 ;
System.out.println ( 'Orihinal na dobleng halaga: ' +dbl ) ;

Tatawagin natin ang ' Math.round() 'paraan upang i-round off ang dobleng halaga at pagkatapos ay i-print ang na-update na halaga gamit ang ' System.out.println() 'paraan:

double roundVal = Math.round ( dbl * 100.0 ) / 100.0 ;
System.out.println ( 'Na-update na rounded Double value: ' +roundVal ) ;

Ipinapakita ng output na ang dobleng halaga ay matagumpay na na-round up sa dalawang decimal na lugar:

Tingnan natin ang iba pang mga paraan upang i-round off ang double value sa dalawang decimal place.

Paraan 2: I-round ang Doble hanggang dalawang Decimal Places sa pamamagitan ng Paggamit ng BigDecimal Class

Maaari rin nating bilugan ang dobleng halaga gamit ang “ setScale() ” paraan ng klase ng BigDecimal. Ang klase na ito ay kabilang sa ' java.math.BigDecimal ” pakete.

Syntax

Ang sumusunod na syntax ng BigDecimal.setScale() ay maaaring gamitin para sa tinukoy na layunin:

BigDecimal ( dbl ) .setScale ( numero, RoundingMode.HALF_UP ) ;

Dito,' dbl ' ay ang BigDecimal class object na tatawaging ' setScale() ” paraan. Ang pamamaraang ito ay tumatanggap ng dalawang parameter, ' numero 'at' RoundingMode ”, kung saan ang numero ay ang integer na halaga na tumutukoy sa sukat para sa pag-round sa decimal na halaga, at ang RoundingMode ay kumakatawan sa mode ng pag-round sa decimal na halaga.

Halimbawa

Una, gagawa tayo ng object ng BigDecimal class ' bd 'at ipasa ang' dbl ” object bilang argumento at pagkatapos ay tawagan ang “ setScale() 'paraan na may sukat' dalawa ' at RoundingMode bilang ' HALF-UP ”. Ang mga argumentong ito ay magpapabilog sa Double value ng dalawang decimal na lugar patungo sa kapitbahay nito:

BigDecimal bd = bagong BigDecimal ( dbl ) .setScale ( dalawa , RoundingMode.HALF_UP ) ;

Pagkatapos, tatawagin natin ang ' doubleValue() ” method na may nilikhang BigDecimal class object at iimbak ito sa isang bagong double type na variable name “ dbl1 ”:

double dbl1 = bd.doubleValue ( ) ;

Panghuli, i-print ang bilugan na decimal na halaga sa tulong ng ' System.out.println() 'paraan:

System.out.println ( 'Na-update na rounded Double value: ' +dbl1 ) ;

Output

Ngayon, subukan natin ang susunod na paraan.

Paraan 3: I-round ang Doble hanggang dalawang Decimal Places sa pamamagitan ng Paggamit ng DecimalFormat

Ang ' DecimalFormat 'Ang klase ay ginagamit upang i-format ang mga decimal na numero. Nagbibigay ang klase na ito ng Pattern ng pag-format upang i-format ang doble hanggang 2 decimal na lugar. Ito ay ang subclass ng klase ng NumberFormat.

Syntax

Para sa pag-round ng doble sa dalawang decimal na lugar gamit ang klase ng DecimalFormat, sundin ang ibinigay na syntax:

DecimalFormat ( '###.##' ) ;

Dito,' ###.## ” ay kumakatawan sa format para sa pag-round sa numero sa dalawang decimal na lugar.

Halimbawa

Gagawa tayo ng object ng ' DecimalFormat 'class na pinangalanan' dcf ” at ipasa ang nabanggit na format bilang argumento:

DecimalFormat dcf = bagong DecimalFormat ( '###.##' ) ;

I-print ang bilugan na halaga sa pamamagitan ng pagtawag sa “ format() 'paraan at ipasa ang dobleng halaga' dbl ” dito bilang isang argumento:

System.out.println ( 'Na-update na rounded Double value: ' +dcf.format ( dbl ) ) ;

Ipinapakita ng output ang rounded double value hanggang sa dalawang decimal place:

Paraan 4: I-round ang Doble hanggang dalawang Decimal Places sa pamamagitan ng Paggamit ng NumberFormat Class

Ang ' NumberFormat ” ay ang klase na kabilang sa java.text.NumberFormat package. Ito ay ginagamit upang i-format ang mga decimal na numero na may “ setMaximumFractionDigits() ” paraan sa pamamagitan ng pagpasa ng kinakailangang numero upang i-round off bilang argumento.

Syntax

Sundin ang ibinigay na syntax ng NumberFormat upang i-round ang doble hanggang dalawang decimal na lugar:

setMaximumFractionDigits ( numero ) ;

Dito, tatanggapin ng setMaximumFractionDigits() na paraan ang numerong nagsasabi ng sukat ng mga decimal point sa dobleng halaga.

Halimbawa

Gagawa muna kami ng isang halimbawa ng klase ng NumberFormat bilang ' nf ”:

NumberFormat nf = NumberFormat.getInstance ( ) ;

Pagkatapos, tatawagin natin ang setMaximumFractionDigits() na paraan at ipapasa ang “ dalawa ” bilang isang argumento na nagsasabi sa sukat ng mga decimal point sa dobleng halaga:

nf.setMaximumFractionDigits ( dalawa ) ;

Panghuli, magpi-print kami ng rounded value sa pamamagitan ng pagtawag sa “ format() 'paraan at pagpasa' dbl ' bilang isang argumento dito:

System.out.println ( 'Na-update na rounded Double value: ' +nf.format ( dbl ) ) ;

Output

Paraan 5: I-round ang Doble hanggang dalawang Decimal Places sa pamamagitan ng Paggamit ng String format() Method

Ang ' format() Ang pamamaraan ay ang static na pamamaraan ng klase ng String. Ang dobleng halaga ay ni-round up sa dalawang decimal na lugar gamit ito. Ang pamamaraang ito ay nagsisilbing ' printf ” pahayag.

Syntax

Sundin ang ibinigay na syntax sa ibaba upang magamit ang String.format() na paraan:

String.format ( '%.2f' , dobleng halaga )

Kailangan ng dalawang parameter, ' %.2f ” at ang dobleng halaga. Kinakatawan ng unang argumento ang kinakailangang format ng ipinasa na double value.

Halimbawa

Tatawagin namin ang String.format() na pamamaraan sa pamamagitan ng pagpasa ng isang Double class object “ dbl ' at ang ' %.2f ” format bilang mga argumento nito:

System.out.println ( 'Na-update na rounded Double value: ' +String.format ( '%.2f' ,dbl ) ) ;

Tulad ng nakikita mo, ang dobleng halaga ay bilugan sa dalawang decimal na lugar:

Nakuha namin ang lahat ng mahahalagang impormasyon na nauugnay sa pag-round off ng dobleng halaga hanggang sa dalawang decimal na lugar sa Java.

Konklusyon

Para sa pag-round ng dobleng halaga sa dalawang decimal na lugar, may iba't ibang pamamaraan na sinusuportahan ng wikang Java: Math.round() method, String format() method, at iba pang paraan ng BigDecimal class, DecimalFormat class, at NumberFormat class. Ang manwal na ito ay naglalarawan ng mga pamamaraan upang i-round off ang dobleng halaga sa dalawang decimal na lugar sa Java.