Преобразование целого числа в массив символов: java
Как лучше всего преобразовать целое число в массив символов?
Вход: 1234
Выход: {1,2,3,4}
Помня о обширности языка Java, какой будет лучший и эффективный способ сделать это?
Ответ 1
int i = 1234;
char[] chars = ("" + i).toCharArray();
Ответ 2
Вы можете попробовать что-то вроде:
String.valueOf(1234).toCharArray();
Ответ 3
Попробуйте это...
int value = 1234;
char [] chars = String.valueOf(value).toCharArray();
Ответ 4
Вы можете преобразовать это целое число в строку и затем преобразовать эту строку в char arary: -
int i = 1234;
String s = Integer.toString(i);
Char ch[] = s.toCharArray();
/*ch[0]=1,ch[1]=2,ch[2]=3,ch[3]=4*/
Ответ 5
Мне задали этот вопрос в интервью Google. Если вас попросят в интервью, используйте модуль и подразделение. Вот ответ
List<Integer> digits = new ArrayList<>();
//main logic using devide and module
for (; num != 0; num /= 10)
digits.add(num % 10);
//declare an array
int[] arr = new int[digits.size()];
//fill in the array
for(int i = 0; i < digits.size(); i++) {
arr[i] = digits.get(i);
}
//reverse it.
ArrayUtils.reverse(arr);
Ответ 6
Скажите, что у вас есть массив ints и другой метод, который преобразует эти ints в письма, например, для программы, меняющей числовые оценки на классы букв, вы бы сделали...
public char[] allGradesToLetters()
{
char[] array = new char[grades.length];
for(int i = 0; i < grades.length; i++)
{
array[i] = getLetter(grades[i]);
}
return array;
}