java double tutorial with programming examples
Denne vejledning forklarer primitiv datatype Java Double. Vi vil også diskutere relaterede klasser som Java BigDecimal og DecimalFormat Class med eksempler:
I denne vejledning vil vi udforske den dobbelte datatype ved hjælp af syntaks og programmeringseksempler.
Java-decimalformat og store decimalklasser forklares her med nogle ofte stillede spørgsmål, der hjælper dig med at forstå den dobbelte datatype tydeligt.
=> Se på Java Beginners Guide her.
Hvad du vil lære:
Java primitive typer
Som vi alle ved, har Java otte primitive typer, dvs. int, kort, lang, byte, float, dobbelt, char og boolsk. Java-dobbelt er en af de primitive datatyper, hvis bredde og rækkevidde er mere end flyde.
Primitive typer | Bredde (bit) | Rækkevidde |
---|---|---|
dobbelt | 64 | 4.9e-324 til 1.8e + 308 |
Java Double
Java-dobbelt bruges til at repræsentere flydende tal. Det bruger 64 bits til at gemme en variabel værdi og har et område, der er større end float-typen.
Syntaks:
// square root variable is declared with a double type. double sqrt;
Java dobbelteksempel
I dette eksempel beregner vi kvadratroden af arealet af et rektangel. Vi har taget længde og bredde som heltal og beregnet det område, der er af typen heltal.
Da kvadratroden sandsynligvis giver dig decimalværdi, erklærede vi variablen Area_sqrt som dobbelt og beregnet kvadratroden.
public class doubleExample { public static void main(String() args) { int length=15, breadth=25; int area; area = length*breadth; // calculating area of the rectangle System.out.println('Area of rectangle is ' + area); // declared a varibale which will store the square root double Area_sqrt; // calculating square root of Area of the rectangle Area_sqrt = Math.sqrt(area); System.out.println('Square root of area is ' +Area_sqrt); } }
Produktion
Java DecimalFormat
Java har en speciel klasse kaldet DecimalFormat, der bruges til at formatere numrene. Denne formatering kan tilpasses.
I nedenstående eksempel har vi defineret et mønster afgrænset med komma ',' og et decimaltal af typen dobbelt. Ved hjælp af dette mønster eller format vil vi vise vores inputnummer.
Vi har overført mønsteret til decimalformatklassen, og vi har formateret output ved hjælp af referencen 'df'.
import java.text.DecimalFormat; public class ExampleFormat { public static void main(String() args) { // defining a format in which number will be displayed String formatter = '##,###,###.##'; // initialized the decimal number double num = 12345678.12; // passed the pattern into the Decimal format class DecimalFormat df = new DecimalFormat(formatter); // printed the formatted number System.out.println('The formatted number is: ' +df.format(num)); } }
Produktion
Java BigDecimal
Dette er igen en speciel Java-klasse, der giver enkle aritmetiske operationer på nummeret (tilføj, træk, gang og del), afrunding af resultatet, formatkonvertering osv.
Lad os se på nedenstående eksempel for at forstå dette bedre.
Afrunding af nummeret
hvordan man opretter en matrix af generisk type i java
I nedenstående eksempel har vi demonstreret forskellen mellem den enkle subtraktion af decimal og subtraktionen gennem Big-Decimal-klassen.
Vi har initialiseret to dobbeltvariabler og beregnet forskellen mellem deres værdier. Igen har vi initialiseret to variabler ved hjælp af Big Decimal klasse med samme værdi og beregnet deres forskel.
Endelig har vi udskrevet begge værdier, og du kan se forskellen mellem dem. Den beregnede værdi af Big Decimal blev automatisk afrundet.
import java.math.BigDecimal; public class example { public static void main(String() args) { // Initialized two double numbers double length1 = 1.06; double breadth1 = 1.07; // Subtracting length and breadth double sub = breadth1-length1; System.out.println('Simple Subtraction = ' +sub); // Initialized two big decimal numbers with same value BigDecimal length2 = new BigDecimal('1.06'); BigDecimal breadth2 = new BigDecimal('1.07'); // Subtracting length and breadth length2 = breadth2.subtract(length2); System.out.println('Big Decimal Subtraction = ' + length2); } }
Produktion
Ofte stillede spørgsmål
Q # 1) Hvor mange byte tager en dobbelt type?
hvad er netværkssikkerhedsnøglen til wifi
Svar: 8 byte.
Q # 2) Hvad er MathContext i Java?
Svar: MathContext er en klasse i Java, der specificerer afrunding af nummertilstand og præcision. Det giver uforanderlige objekter og er også ansvarlig for at indføre bestemte regler for operatørerne, der implementeres af Big Decimal-klassen.
Reglerne er:
RoundingMode.CEILING,
RoundingMode.DOWN,
RoundingMode.FLOOR,
RoundingMode.UP
I nedenstående eksempel har vi initialiseret en dobbelt variabel og indstillet forskellige regler for afrunding af cifrene. Dette fungerer i overensstemmelse med den outputspecifikator, som vi har bestået.
For eksempel, I den første udskriftsopgørelse beregner vi loftfunktionen, hvor vi har passeret '3' som en outputspecifikator. Dette betyder, at output vil have tre cifre. Ligeledes har vi i den sidste erklæring passeret '1', så output vil indeholde 1 ciffer.
import java.math.BigDecimal; import java.math.MathContext; import java.math.RoundingMode; public class example { public static void main(String() args) { double d = 3.14; // Rounded off to the upper limit, the output will contain 3 digit System.out.println(new BigDecimal(d, new MathContext(3, RoundingMode.CEILING))); // Rounded off to the lower limit, the output will contain 3 digit System.out.println(new BigDecimal(d, new MathContext(3, RoundingMode.DOWN))); /* * Rounded off to the previous integer (discards the decimal value) * The output will contain 1 digit */ System.out.println(new BigDecimal(d, new MathContext(1, RoundingMode.FLOOR))); /* * Rounded off to the next integer (discards the decimal and increments integer) * The output will contain 1 digit */ System.out.println(new BigDecimal(d, new MathContext(1, RoundingMode.UP))); } }
Produktion
Q # 3) Er Java Big Decimal uforanderlig?
Svar: Ja. Hver gang når vi udfører en bestemt operation i Big Decimal, returnerer de et nyt objekt i stedet for at ændre de allerede oprettede objekter.
Q # 4) Hvad er forskellen mellem float og double?
Svar: Nedenfor er forskellene mellem float og double.
Flyde | Dobbelt |
---|---|
Det repræsenterer enkeltpræcisionsnumre. | Det repræsenterer dobbelt præcisionstal. |
Bredden er 32 bit, og området er 1,4e – 045 til 3,4e + 038 | Bredden er 64 bit, og intervallet er 4,9e – 324 til 1,8 e + 308 |
Den indeholder 7 cifre. | Den indeholder mellem 15-16 cifre. |
Nyttig til valutakonvertering. | Nyttig i sin (), cos (), sqrt (), da returtypen er dobbelt. |
Langsommere end dobbelt præcision. | På moderne processorer, der er bygget til at udføre lange matematiske operationer, er dobbelt præcision langt hurtigere. |
Q # 5) Hvad er en matematik klasse?
Svar: En matematikklasse er en klasse i Java, der indeholder alle de metoder, der bruges i matematiske operationer. Den har to dobbeltkonstanter, dvs. E (2.72) og pi (3.14).
For eksempel, sin (), cos (), tan () metoder til trigonometri. sqrt (), log (), pow () eksponentielle metoder. Et programmeringseksempel på pow () er allerede dækket ovenfor (Java-dobbelteksempel).
Konklusion
I denne vejledning har vi forklaret den dobbelte primitive type med et passende eksempel. Vi har også inkluderet DecimalFormat og BigDecimal Java med programmer.
Ofte stillede spørgsmål er også inkluderet i forskellige områder af den dobbelte type som rækkevidde, bredde, størrelse, matematikklasse osv.
Når du gennemgår denne tutorial, vil du være i stand til at forstå den dobbelte type i detaljer, og du vil være i stand til at bruge disse begreber til at skrive din egen logik om aritmetiske operationer.
=> Læs gennem Easy Java Training Series.
Anbefalet læsning
- Java Float Tutorial med programmeringseksempler
- Java String indeholder () Metodevejledning med eksempler
- Java-heltal og Java BigInteger-klasse med eksempler
- Java String Tutorial | Java strengmetoder med eksempler
- Java Reverse String: Tutorial med programmeringseksempler
- Java substring () Metode - Vejledning med eksempler
- Ternær operatør i Java - Vejledning med eksempler
- Jagged Array In Java - Vejledning med eksempler