Android examples for java.lang:array calculation
Get the moving average of the given array.
/*/*from w w w . j a v a 2 s.co m*/ * This source is part of the * _____ ___ ____ * __ / / _ \/ _ | / __/___ _______ _ * / // / , _/ __ |/ _/_/ _ \/ __/ _ `/ * \___/_/|_/_/ |_/_/ (_)___/_/ \_, / * /___/ * repository. * * Copyright (C) 2013-2014 Benoit 'BoD' Lubek (BoD@JRAF.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ public class Main{ /** * Get the moving average of the given array. * * @param values The array for which to calculate the moving average. * @param period The period to use (number of values to average). * @return the average. */ public static float[] getMovingAverage(float[] values, int period) { float[] res = new float[values.length]; MovingAverage movingAverage = new MovingAverage(period); int i = 0; for (float v : values) { movingAverage.add(v); res[i] = movingAverage.getAverage(); i++; } return res; } /** * Get the average of the given array. * * @param values The array for which to calculate the average. * @return the average. */ public static float getAverage(float... values) { float sum = 0; for (float val : values) { sum += val; } return sum / values.length; } }