All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dev.utils.common.assist.Averager Maven / Gradle / Ivy

package dev.utils.common.assist;

import java.util.ArrayList;
import java.util.List;

/**
 * detail: 均值计算 ( 用以统计平均数 ) 辅助类
 * @author Ttt
 */
public class Averager {

    private final List mNumLists = new ArrayList<>();

    /**
     * 添加一个数字
     * @param number Number
     * @return {@link Averager}
     */
    public synchronized Averager add(final Number number) {
        mNumLists.add(number);
        return this;
    }

    /**
     * 清除全部
     * @return {@link Averager}
     */
    public Averager clear() {
        mNumLists.clear();
        return this;
    }

    /**
     * 获取参与均值计算的数字个数
     * @return 参与均值计算的数字个数
     */
    public Number size() {
        return mNumLists.size();
    }

    /**
     * 获取平均数
     * @return 全部数字平均数
     */
    public Number getAverage() {
        if (mNumLists.size() == 0) {
            return 0;
        } else {
            float sum = 0F;
            for (int i = 0, len = mNumLists.size(); i < len; i++) {
                sum = sum + mNumLists.get(i).floatValue();
            }
            return sum / mNumLists.size();
        }
    }

    /**
     * 输出参与均值计算的数字
     * @return 参与均值计算的数字
     */
    public String print() {
        return "printList(" + size() + "): " + mNumLists;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy