Как да конвертирате низ в Int в Java? Ако String съдържа само числа, тогава най-добрият начин да конвертирате String в Int е като използвате Integer.parseInt()
или Integer.valueOf()
.
Ако низът съдържа както числа, така и символи, тогава трябва да използваме регулярни изрази за извличане на числа от низа и след това преобразувайте получения String в Int.
Едно нещо, което трябва да се отбележи е, че parseInt(String)
връща примитивен int, докато valueOf(String)
връща обект Integer ().
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
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()
. Интересна характеристика на 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, за да конвертираме 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