У меня есть две функции, которые я думал, чтобы бросить Двойники несмотря из них используют разные типы данных:Функция с коротким типом данных работает способ отличается двойным
public double[] getdoubleArray(){
final String[] myStringArray = oldArray[0].split(",");
double[] d = new double[myStringArray.length];
for(int i = 0; i < d.length -1; i++){
d[i] = Double.parseDouble(myStringArray[i]);
}
return d;
}
это работает как положено.
public short[] getshortArray(){
final String[] myStringArray = oldArray[1].split(",");
short[] s = new short[myStringArray.length];
for(int i = 0; i < s.length -1; i++){
s[i] = Short.parseShort(myStringArray[i]);
}
return s;
}
эта функция вызывается вскоре после того, один выше и каждый раз, когда он находится в петле с = 1 она прерывается на другой поток или класса ZygoteInit. но когда я меняю тип данных на двойные, тогда он отлично работает. (Исключено из-за того, что я делаю короткий массив) Может ли кто-нибудь объяснить это или имеет сульфию?
EDIT 1. Я не получаю освобождение. Когда я отлаживаю, я обычно заканчиваю там, где между строками, где нет фактического кода.
- Данные в строке не могут быть проблемой, поскольку я скопировал ее из короткого массива, который работал. (строка в файле oldArray [1]: «0, 1, 2, 0, 2, 3, 4»)
Вы заметили, что один метод использует 'oldArray [0]' и другой 'oldArray [1]'? – Eran
@Eran извините, опечатка ... исправила его ... индекс oldArray - это значит быть другим. – HHHH
Как насчет моего первого комментария? – Eran