Android 获取平均值的最佳实践

Android 获取平均值的最佳实践,android,audio,fft,Android,Audio,Fft,我正在创建一个显示1/3倍频程音频信号频率响应的应用程序 我有一个for循环来获得每个样本的频率。我有if语句来检查样本是否在高达20K的频带内 例如: if(freq>14.1&&freq

我正在创建一个显示1/3倍频程音频信号频率响应的应用程序

我有一个for循环来获得每个样本的频率。我有if语句来检查样本是否在高达20K的频带内

例如: if(freq>14.1&&freq<17.8){//第一倍频带 将此响应绘制在图表上 }

我通常会得到这些低频率的一个样本,所以在图表上绘制是没有问题的

当我在一个倍频程波段中获得多个样本时,我的问题就出现了,我不知道在一个波段中会获得多少样本,所以我不能只做(freqs in this band==3)getAvg()


我不知道如何知道何时获得了一个频带内的所有频率,以便获得它们的平均值

将所有样本存储在数组或arraylist中


创建所有样本后,您可以使用多种技术来计算平均值,但最简单的方法是计算所有样本的总和并将其除以样本数

嗨,Edward,我实际上是在将样本添加到arraylist中,我只是不知道什么时候我已经获得了该频段的所有样本,所以我可以计算平均值为什么你不能在离开for循环后立即计算平均值?我假设你在完成采样后离开for循环,对吗?