Java - преобразовать целое число в строку

С учетом числа:

int number = 1234;

Какой был бы "лучший" способ конвертировать это в строку:

String stringNumber = "1234";

Я попробовал поиск (googling) для ответа, но многие не казались "заслуживающими доверия".

Ответ 1

Существует несколько способов:

  • String.valueOf(number) (мои предпочтения)
  • "" + number (я не знаю, как его обрабатывает компилятор, возможно, он так же эффективен, как и выше)
  • Integer.toString(number)

Ответ 2

Integer класс имеет статический метод toString() - вы можете его использовать:

int i = 1234;
String str = Integer.toString(i);

Возвращает объект String, представляющий указанное целое число. Аргумент преобразуется в подписанное десятичное представление и возвращается как строка, точно так же, как если аргумент и radix 10 были указаны как аргументы метода toString (int, int).

Ответ 3

Это будет сделано. Довольно надежный.:)

    ""+number;

Ответ 4

Всегда используйте либо String.valueOf(number), либо Integer.toString(number).

Использование "+" - это служебные данные и делает следующее:

StringBuilder sb = new StringBuilder();
sb.append("");
sb.append(number);
return sb.toString();

Ответ 5

Способ, которым я знаю, как преобразовать целое число в строку, - это использовать следующий код:

Integer.toString(int);

и

String.valueOf(int);

Если бы у вас было целое число я и строка s, то применимо следующее:

int i;
String s = Integer.toString(i); or
String s = String.valueOf(i);

Если вы хотите преобразовать строку s в целое число "i", тогда будет работать следующее:

i = Integer.valueOf(s).intValue();

Ответ 6

Это метод, который я использовал для преобразования целого в string.Correct me, если я сделал неправильно.

/**
 * @param a
 * @return
 */
private String convertToString(int a) {

    int c;
    char m;
    StringBuilder ans = new StringBuilder();
    // convert the String to int
    while (a > 0) {
        c = a % 10;
        a = a / 10;
        m = (char) ('0' + c);
        ans.append(m);
    }
    return ans.reverse().toString();
}

Ответ 7

Тот, который я часто использую:

 Integer.parseInt("1234");

Точка есть, есть много способов сделать это, все одинаково действительны. Что касается наиболее оптимального/эффективного, вам нужно спросить кого-то другого.