Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako môžem previesť plavák na dvojnásobok v Jave?

V Java nepotrebujete explicitnú konverziu na zmenu `float` na` double`. Java, ak je to potrebné, automaticky propaguje `float` na` Double`. Toto sa nazýva * rozširujúca konverzia *, pretože `double` má väčší rozsah a presnosť ako` float`.

Takto to funguje:

`` `Java

verejná trieda Floattodouble {

public static void main (String [] args) {

float myfloat =3,14f; // Všimnite si, že prípona „f“ je rozhodujúca pre plavákové literály.

Double myDouble =myfloat; // Implicitná konverzia

System.out.println ("float:" + myfloat);

System.out.println ("double:" + myDouble);

}

}

`` `

Riadok `Double myDouble =myfloat;` implicitne prevádza hodnotu `float` na` double`. Nie je potrebné žiadne obsadenie. Java rieši konverziu hladko.

Ak by ste mali vykonávať aritmetické operácie zahŕňajúce `float` a` dvojité`, pred výpočtom by sa „float` by sa automaticky propagoval na„ dvojnásobok “.

Aj keď to * môžete * explicitne obsadiť pomocou `(dvojitého) myfloat`, je to nadbytočné, pretože implicitnú konverziu už spracúva správne a efektívne kompilátorom Java:

`` `Java

Double myDoubleExplit =(Double) myfloat; // explicitné, ale zbytočné

`` `

Takmer vo všetkých prípadoch je implicitná konverzia preferovaná pre lepšiu čitateľnosť a stručnosť. Explicitné obsadenie môže byť užitočné iba v situáciách, keď chcete urobiť konverziu veľmi explicitnú pre čitateľnosť v zložitom kóde alebo zdôrazniť, že ste si vedomí potenciálnej straty presnosti (aj keď v tomto prípade od float po dvojnásobok v porovnaní s inými konverziami).

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené