Java karakterlánc konvertálása kettőssé

1. Áttekintés

Ebben az oktatóanyagban a Húr ba be kettős Java-ban.

2. Double.parseDouble

Átalakíthatjuk a Húr a kettős használni a Kettős.parseDupla módszer:

assertEquals (1,23, Double.parseDouble ("1,23"), 0,000001);

3. Double.valueOf

Hasonlóképpen átalakíthatjuk a Húr dobozosba Kettős használni a Double.valueOf módszer:

assertEquals (1,23, Double.valueOf ("1,23"), 0,000001);

Vegye figyelembe, hogy a Double.valueOf egy dobozos Kettős. Java 5 óta ez dobozolt Kettős a fordító egy primitívvé alakítja kettős ahol szükséges.

Általánosságban, előnyben kellene részesítenünk Double.parseDouble mivel nem igényli a fordítótól az automatikus kicsomagolás végrehajtását.

4. DecimalFormat.parse

Amikor a Húr képviselő a kettős bonyolultabb formátumú, használhatjuk a DecimalFormat.

Például átalakíthatunk egy tizedes alapú pénznemértéket a nem numerikus szimbólumok eltávolítása nélkül:

DecimalFormat format = new DecimalFormat ("\ u00A4 #, ## 0.00"); format.setParseBigDecimal (true); BigDecimal decimal = (BigDecimal) format.parse ("- 1 000,57 USD"); assertEquals (-1000,57, decimális.duplaValue (), 0,000001);

Hasonló a Double.valueOf, a DecimalFormat.parse metódus a Szám, amelyet átalakíthatunk primitívvé kettős használni a doubleValue módszer. Ezenkívül a setParseBigDecimal módszer kényszerítésére DecimalFormat.parse hogy visszatérjen a BigDecimal.

Általában a DecimalFormat fejlettebb, mint amire szükségünk van, ezért előnyben kell részesítenünk a Double.parseDouble vagy a Double.valueOf helyette.

További információkért DecimalFormat, kérjük, olvassa el a gyakorlati útmutatót DecimalFormat.

5. Érvénytelen konverziók

A Java egységes felületet biztosít az érvénytelen számok kezeléséhez Húrs.

Nevezetesen, Double.parseDouble, Double.valueOf, és DecimalFormat.parse dobás a NullPointerException amikor elhaladunk nulla.

Hasonlóképpen, Double.parseDouble és Double.valueOf dobás a NumberFormatException amikor érvénytelen karakterláncot adunk át, amelyet nem lehet elemezni a kettős (mint például &).

Végül, DecimalFormat.parse dob egy ParseException amikor elhaladunk egy érvénytelen mellett Húr.

6. Az elavult konverziók elkerülése

A Java 9 előtt létrehozhattunk egy dobozos elemet Kettős a-tól Húr példányosítással a Kettős:

új dupla ("1,23");

A 9. verziótól kezdve a Java hivatalosan megszüntette ezt a módszert.

7. Következtetés

Összegzésként elmondható, hogy a Java többféle módszert biztosít számunkra az átalakításhoz Húrs bele kettős értékek.

Általában javasoljuk a használatát Double.parseDouble hacsak nem dobozos Kettős szükség van rá.

A cikk forráskódja a példákkal együtt megtalálható a GitHub oldalon.