У меня есть двойной
double pi = 3.1415;
Я хочу преобразовать это в массив int
int[] piArray = {3,1,4,1,5};
Я придумал это
double pi = 3.1415;
String piString = Double.toString(pi).replace(".", "");
int[] piArray = new int[piString.length()];
for (int i = 0; i <= piString.length()-1; i++)
piArray[i] = piString.charAt(i) - '0';
Это работает, но мне не нравится это решение, потому что я думаю, что много конверсий между типами данных может привести к ошибкам. Является ли мой код даже полным или мне нужно проверить что-то еще?
И как бы вы подошли к этой проблеме?