Эту технику преподавали на уроках начального уровня в Java, которые я посещал более десяти лет назад.Однако, я должен отметить, что, IIRC, мы еще не получили методы класса String и Integer.
Техника проста и быстро вводится.Если все, что я делаю, это что-то печатаю, то я буду использовать это (например, System.out.println("" + i);
). Однако я думаю, что это не самый лучший способ сделать преобразование, поскольку требуется время, чтобы понять, что происходит, когдаэто используется таким образом. Кроме того, если производительность является проблемой, она кажется медленнее (подробнее ниже, а также в других ответах).
Лично я предпочитаю Integer.toString (), так как очевидно, чтослучается. String.valueOf () будет моим вторым выбором, так как кажется, что он сбивает с толку (посмотрите комментарии после ответа Дарио).
Только для усмешки :) Я написал классы для проверки трех методов: ""+ i, Integer.toString и String.ValueOf.Каждый тест просто конвертировал целые числа от 1 до 10000 в строки.Затем я запускал каждую команду Linux time пять раз.Integer.toString () был немного быстрее, чем String.valueOf () один раз, они связывались три раза, а String.valueOf () был быстрее один раз;однако разница никогда не превышала пары миллисекунд.
Метод "" + i был медленнее, чем оба в каждом тесте, кроме одного, когда он был на 1 миллисекунду быстрее, чем Integer.toString () и 1 миллисекундумедленнее, чем String.valueOf () (очевидно, в том же тесте, где String.valueOf () был быстрее, чем Integer.toString ()).Хотя обычно это было всего на пару миллисекунд медленнее, был один тест, где он был примерно на 50 миллисекунд медленнее. YMMV .