Jak przekonwertować ciąg na int w Javie?

W jaki sposób można przekonwertować ciąg na int w Javie?

Mój ciąg zawiera tylko liczby i chcę zwrócić reprezentowaną przez niego liczbę.

Na przykład, podając łańcuch „1234”, wynik powinien być liczbą 1234.

1 odpowiedź

String myString = "1234";
int foo = Integer.parseInt(myString);

Jeśli spojrzysz na dokumentację Java, zauważysz, że „catch” polega na tym, że ta funkcja może wywołać wyjątek NumberFormatException, który oczywiście musisz obsłużyć:

int foo;
try {
   foo = Integer.parseInt(myString);
}
catch (NumberFormatException e)
{
   foo = 0;
}

(To leczenie domyślnie ustawia nieprawidłową liczbę na 0, ale jeśli chcesz, możesz zrobić coś innego).

Alternatywnie, możesz użyć metody Ints z biblioteki Guava, która w połączeniu z Java 8, tworzy potężny i zwięzły sposób konwertowania ciągu znaków na int:

import com.google.common.primitives.Ints;

int foo = Optional.ofNullable(myString)
 .map(Ints::tryParse)
 .orElse(0)

Twoja odpowiedź

Zaloguj się aby odpowiedzieć.

Operiada

Operiada to polskojęzyczne forum informatyczne działające na zasadzie pytań i odpowiedzi.

Obserwowane tagi

Zaloguj się aby obserwować tagi.