CodeGym/Java blog/Tilfældig/Java dobbelt søgeord
John Squirrels
Niveau
San Francisco

Java dobbelt søgeord

Udgivet i gruppen
Java- dobbeltsøgeordet , som i ethvert andet sprog, angiver et computerformat til at repræsentere et flydende kommatal, der optager 64 bit eller 8 bytes i hukommelsen. I denne artikel skal vi tale om dobbelt og se på nogle eksempler.

Flydende komma og beregning: en kort matematisk beskrivelse

Brøktal er enten fast eller flydende komma. Den første mulighed kan repræsenteres som en regulær brøk, hvor tælleren (selve tallet) og nævneren (dens skaleringsfaktor) vil være heltal. For eksempel er tallet 2,7 27 med en skaleringsfaktor på 10, 3,14 - 314 med en faktor 100. Denne tilgang er dog ikke særlig præcis fra et beregningsmæssigt synspunkt, derfor bruger de ofte flydende komma-repræsentation. Inden for beregning er flydende komma-aritmetik en speciel aritmetisk repræsentation af reelle tal som en tilnærmelse til at understøtte en afvejning mellem rækkevidde og præcision. Hovedformatet til at repræsentere flydende kommatal i Java kaldes float. Dens navn kommer fra floating point. Float er 32 bit, hvoraf 1 bit er fortegnsbit, 8 bit for eksponent og 23 bit for signifikand. Dens rækkevidde er ±3. 40282347E + 38F dvs. 6-7 signifikante cifre. Navnet double kommer fra double float. Detdobbelt type er dobbelt så stor som float : 8 bytes mod 4. Det kaldes også et reelt tal med dobbelt præcision. Af de 64 bits, der er reserveret til et dobbelttal, er 1 fortegnsbit, 11 bit er til eksponent og 52 bit er til signifikand. Java dobbeltbrøk gemmer tal i området ±1,79769313486231570E + 308 dvs. 15-16 signifikante cifre. Dobbelt er et mere præcist format. Så hvis du har brug for at gemme rigtig store tal, er det en god idé at foretrække dobbelt frem for flydende . I øvrigt returnerer matematiske metoder som sqrt, sin eller cos og mange andre dobbelte værdier. Du skal dog betale for dobbelt præcision med hukommelse.

Oprettelse af en dobbelt variabel

Den dobbelte type bruges til at gemme reelle tal. For at oprette en variabel i koden, der vil være i stand til at gemme reelle tal, skal du bruge kommandoen:
double name;
Hvor navn er navnet på variablen.
double myPrice;  //here we create a variable called myPrice
double action; //and here -- action.
Du kan også bruge stenografi til at oprette flere variabler af typen double :
double name1, name2, name3;

Java dobbelt søgeord Eksempler

Lad os give nogle eksempler på brug af Java- dobbeltsøgeordet til at oprette en variabel.
double myPrice = 5.0;
double height = 180;
double x = 7.1, y = 3.0;
Her i variablen myPrice har vi værdien 5,0, i variablen højde — 180, i x sætter vi værdien 7,1 og 3,0 i y .

Dobbelt som et heltal

I Java kan dobbelte variable tildeles både reelle tal og heltal. Når man tildeler heltal, konverteres de blot til reelle tal. Selvom nogle gange er et lille tab af nøjagtighed muligt.
double height = 180;
int k = 2;
int i = 5;
double myDouble = k*i;
Faktisk gemmer højdevariablen tallet 180.0, og myDouble- variablen gemmer tallet 10.0.

Dobbelt- og heltalsinteraktion

Derudover, hvis et heltal og et reelt tal er involveret i et eller andet udtryk, så konverteres hele tallet først til et reelt tal og vekselvirker først derefter med et andet reelt tal.
public class DoubleDemo {
   public static void main(String[] args) {
       int k = 2;
       double myDouble1 = 5;
       double myDouble = k*7.0;
       System.out.println(myDouble1);
       System.out.println(k*myDouble1);
       System.out.println(myDouble);
   }
}
I dette eksempel vil outputtet være:
5,0 10,0 14,0
Selvom tallet myDouble1 er angivet som 5 og ikke 5.0, ser Java dette tal som et dobbelt , så det ser faktisk ud som 5.0. Hvis vi multiplicerer int og double, får vi altid en double , selvom dette tal faktisk er et heltal. Vi kan tildele variabler af typen double til variabler af typen int . For at gøre dette skal du lave en eksplicit typekonvertering. Selvfølgelig vil brøkdelen blive kasseret, tallet vil blive afkortet til et mindre heltal.
public class DoubleDemo {
   public static void main(String[] args) {
       double x = 57.789;
       int almostX;
       almostX = (int)x;
       System.out.println(almostX);
   }
}
Udgangen er:
57
Lad os endelig tale om opdeling. Dette er det mest interessante. Du er måske allerede stødt på det faktum, at hvis du dividerer to heltal, så får vi som et resultat af division et heltal, selvom de ikke er ligeligt delelige med hinanden:
public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7/2;
       System.out.println(myDouble);
   }
}
Resultatet er:
3.0
Dette skyldes, at Java-maskinen først deler to heltal (og får 3), og derefter gemmer denne værdi i en variabel af typen double, og får 3.0 som resultat. For at få ikke heltal, men sædvanlig division, skal du snyde. Skriv for eksempel et af tallene som et reelt tal (så konverteres hele udtrykket automatisk til reelt). Hvis vi arbejder med variabler af heltalstypen, så kan de ganges med 1,0. Dette vil ikke ændre værdien, men det vil ændre typen af ​​variablen fra int til double .
public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7.0/2;
       int x = 5;
       int y = 2;
       System.out.println(myDouble);
       System.out.println(x*1.0/y);
   }
}
Udgangen er:
3,5 2,5
Kommentarer
  • Populær
  • Ny
  • Gammel
Du skal være logget ind for at skrive en kommentar
Denne side har ingen kommentarer endnu