我已经浏览了此处的所有示例,没有什么可以回答我的问题了。我是Groovy的新手。
我想创建类似列表或一系列浮点数的东西,例如239.99。
然后,我想将该数组或列表传递给一个方法,该方法将确定该数组或数字列表中的中位数。总尺寸会有所不同。是否有快速简便的代码可以执行此操作?如何将每个数字添加到数组或列表中,必须使用双打?
任何帮助。
谢谢!
以下功能确定非空列表的中位数。
def median(data) {
def copy = data.toSorted()
def middle = data.size().intdiv(2)
// you can omit the return in groovy for the last statement
data.size() % 2 ? copy[middle] : (copy[middle - 1] + copy[middle]) / 2
}
它与支持加法和分裂的所有类型一起工作。
例如:
assert median([1, 7, 4, 3]) == 3.5
assert median([1, 7, 4]) == 4
assert median([1, 7]) == 4
assert median([1]) == 1
assert median([1.7, 3.4, 10.9, 4.2]) == 3.8
根据您可以使用列表的操作,请检查列表概述,然后列表API。