我需要帮助我写一段代码。我想计算一个数组的中位数。最初这些类型都是整数,并且用整数除法得出中值,这给了我一个错误的答案。我改变了一切双打,但我得到一个类型不匹配的错误,说我不能将双打转换为没有意义的整数。有人可以帮忙吗?这是我的代码:Java中位错误
public class MedianTest {
public static void main(String[] args) {
double median = 0;
double myValues[] = { 1, 2, 3, 4 };
double arrayHalfOdd = ((myValues.length - 1)/2) + 1;
double arrayHalfEven = ((myValues.length - 1)/2);
if ((myValues.length - 1) % 2 == 0) {
median = (myValues[arrayHalfEven] + myValues[arrayHalfEven + 1])/2;
} else {
median = myValues[arrayHalfOdd];
}
System.out.print(median);
}
}
的错误是在myValues [arrayHalfEven]和myValues [arrayHalfOdd]
通过这不是功课
不要忘记让你的代码安全只对一个元素列表... – Adam 2012-03-09 23:24:28