У меня есть программа, над которой я работаю, которая эффективно конвертирует двоичные, десятичные или шестнадцатеричные числа в другие форматы (не спрашивайте, зачем я это делаю, я, честно говоря, не знаю).Пока у меня идет только двоично-десятичное преобразование, и оно работает нормально, однако всякий раз, когда вводится двоичное число, состоящее из 8 цифр или более, оно выходит из строя.переводится в научную нотацию и становится 1.0011001E7, что на самом деле не будет проблемой, за исключением того, что способ преобразования чисел предполагает создание строки с тем же значением, что и число, и разбиение ее на отдельные символы.К сожалению, это означает, что у меня есть строка со значением «1,0011001E7» вместо «10011001», поэтому, когда я сокращаю символы, я нажимаю «».и программа не знает, что делать, когда я пытаюсь сделать с этим вычисления.Так что в основном мой вопрос сводится к тому, как заставить его использовать ненаучную версию записи для этих вычислений?
Спасибо за вашу помощь, и вот код, если он помогает вообще:
//This Splits A Single String Of Digits Into An Array Of Individual Digits
public float[] splitDigits(float fltInput){
//This Declares The Variables
String strInput = "" + fltInput;
float[] digit = new float[strInput.length() - 2];
int m = 0;
//This Declares The Array To Hold The Answer
for (m = 0; m < (strInput.length() - 2); m++){
digit[m] = Float.parseFloat(strInput.substring(m, m + 1)); //Breaks here
}
//This Returns The Answer
return digit;
}