Java - как преобразовать строку в Int с примерами

Как преобразовать String в Int в Java? Если String содержит только числа, то лучший способ преобразовать String в Int - использовать Integer.parseInt() или Integer.valueOf().

Если строка содержит как числа, так и символы, мы должны использовать регулярные выражения для извлечения чисел из строки, а затем преобразовать полученную строку в Int.

Следует отметить, что parseInt(String) возвращает примитивный тип int, тогда как valueOf(String) возвращает объект Integer ().




Преобразование String в Int в Java

Использование Integer.parseInt ()

public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = '1234';
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.parseInt(number);
} }

Выход:

1234

Использование Integer.valueOf ()

public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = '1234';
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.valueOf(number);
} }

Выход:


1234

Важно отметить, что если строка содержит символы и числа, такие как «1234abcd», тогда анализатор Integer выдает исключение NumberFormatException, как указано в Javadoc .

Связанный:

Использование Integer.decode ()

Мы также можем использовать Integer.decode(). Интересная особенность decode в том, что он может преобразовывать в другие базы, такие как base 10, base 16 и т. д.

public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = '1234';
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.decode(number);
} }

Выход:


1234

Класс Apache Commons NumberUtils

И последнее, но не менее важное: мы можем использовать класс Apache Commons NumberUtils для преобразования String в Int в Java.

Все, что вам нужно сделать, это иметь следующую зависимость в вашем pom.xml файл


org.apache.commons
commons-lang3
3.9

Затем вы можете использовать:

import org.apache.commons.lang3.math.NumberUtils; public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = '1234';
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return NumberUtils.toInt(number);
} }

Выход:


1234