Автор оригинала: Pankaj Kumar.
Сегодня мы рассмотрим преобразование Java String в int, а затем преобразование java int в строку. Java предоставляет несколько способов преобразования строки в int и int в строку.
Строка Java в int
- Использование метода
Integer.parseInt - Использование метода
Integer.valueOf - Используя вышеуказанные методы с различным радиусом.
Пример преобразования строки Java в int
Давайте напишем простую программу java для преобразования String в int, обратите внимание, что String-это объект, в то время как int-это примитивный тип данных. Целое число может быть записано в десятичном, шестнадцатеричном, восьмеричном двоичном или любом другом нестандартном формате.
Java 7 одной из функций являются двоичные литералы . В этом примере мы рассмотрим, как преобразовать строку в int, используя различные значения основания.
package com.journaldev.string;
public class JavaStringToInt {
public static void main(String[] args) {
String str = "10";
int x = Integer.parseInt(str);
System.out.println("Java String to int value using Integer.parseInt() = "+x);
int y = Integer.valueOf(str);
System.out.println("Java String to int value using Integer.valueOf() = "+y);
String binary = "0100"; //4
int a = Integer.valueOf(binary, 2);
int b = Integer.parseInt(binary, 2);
System.out.println("Java Binary String to int value = "+a);
System.out.println("Java Binary String to int value = "+b);
String octal = "0100"; //64
int c = Integer.valueOf(octal, 8);
int d = Integer.parseInt(octal, 8);
System.out.println("Java Octal String to int value = "+c);
System.out.println("Java Octal String to int value = "+d);
String hexadecimal = "0100"; //256
int e = Integer.valueOf(hexadecimal, 16);
int f = Integer.parseInt(hexadecimal, 16);
System.out.println("Java hexadecimal String to int value = "+e);
System.out.println("Java hexadecimal String to int value = "+f);
String customRadix = "0100"; //25
int g = Integer.valueOf(customRadix, 5);
int h = Integer.parseInt(customRadix, 5);
System.out.println("Java String with radix 5 to int value = "+g);
System.out.println("Java String with radix 5 to int value = "+h);
}
}
Результатом работы вышеуказанной программы является:
Java String to int value using Integer.parseInt() = 10 Java String to int value using Integer.valueOf() = 10 Java Binary String to int value = 4 Java Binary String to int value = 4 Java Octal String to int value = 64 Java Octal String to int value = 64 Java hexadecimal String to int value = 256 Java hexadecimal String to int value = 256 Java String with radix 5 to int value = 25 Java String with radix 5 to int value = 25
Integer.parseInt(String str)является наиболее часто используемым методом преобразования строки в int, если строка представляет int в десятичном формате. Внутренне он вызывает методInteger.parseInt(String str, int radix)со значением radix 10.- Передавая значение redix как 2, мы можем преобразовать двоичный код в строку представления в int, то же самое верно и для других известных форматов восьмеричных, шестнадцатеричных также.
- Минимальное значение радиуса равно 2, а максимальное значение-36. Для радиуса 36 он включает от 0 до 9, а затем от(10) до Z(36). Преобразование из строки в int не зависит от регистра.
Integer.valueOf(String str)также является способом преобразования строки в int. Существует также перегруженный метод, в котором мы можем передать radix, как вы можете видеть из приведенного выше примера кода.- Если строковое представление не содержит анализируемого целого числа, оба вышеуказанных метода вызывают исключение
NumberFormatException. - Строковое представление должно содержать только значение, а не связанный с ним префикс основания, например 0x, 0b и т.д.
Java int в строку
- Использование оператора + для объединения int в строку.
- Используя метод
String.valueOf. - Используя
String.форматметод
Пример Java int to String
Давайте напишем простую программу для преобразования java int в строковый объект, используя различные методы.
package com.journaldev.string;
public class JavaIntToString {
public static void main(String[] args) {
int i = 10;
int j = 0xEF;
int k = 0123;
int l = 0b111;
String str = "" + i;
String str1 = String.valueOf(j);
String str2 = String.format("%d", k);
String str3 = "" + l;
System.out.println(i + " decimal int to String " + str);
System.out.println(j + " hexadecimal int to String " + str1);
System.out.println(k + " octal int to String " + str2);
System.out.println(l + " binary int to String " + str3);
}
}
Результатом приведенной выше программы является:
10 decimal int to String 10 239 hexadecimal int to String 239 83 octal int to String 83 7 binary int to String 7
- Оператор ” + ” перегружен для строки, и его можно использовать для преобразования int в строку. Он также обрабатывает различные форматы, такие как шестнадцатеричный, восьмеричный, двоичный, и преобразует их в десятичный формат, прежде чем возвращать конечный строковый объект.
String.valueOf(int i)может использоваться для преобразования int в строку.Метод valueOf()Перегружен для приема float, long, double и т.д. Внутренне он использует методInteger.toString(int i)для возврата строкового объекта.String.формат(Формат строки, объект... args)также является еще одним способом преобразования int в строковый объект.- Перед преобразованием int в строку значение всегда преобразуется в десятичный формат, а затем присваивается строке. Как вы можете видеть из приведенных выше выходных данных, все строковые представления представлены в десятичном формате.
Это все для преобразования Java String в int и int в строку, мы рассмотрим больше вопросов для интервью на Java в будущих публикациях.
Ссылка: Документ По Целочисленному API