lxw
2022-10-11 c8fe7628d2d6a3a40d8e168c67b10b6e65415517
src/main/java/com/whyc/util/MathUtil.java
@@ -1,5 +1,7 @@
package com.whyc.util;
import com.whyc.pojo.TestParam;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Arrays;
@@ -7,7 +9,7 @@
import java.util.stream.Collectors;
public class MathUtil {
    //均一性
    public static float getStandardDeviation(List<Float> list){
        //求平均值
        float avg = list.stream().collect(Collectors.averagingDouble(Float::floatValue)).floatValue();
@@ -23,6 +25,24 @@
        double σ = Math.sqrt(s.doubleValue());
        return BigDecimal.valueOf(σ).setScale(4, RoundingMode.HALF_UP).floatValue();
    }
    //评判整组的好坏flag:1 电压; 2 内阻;3 连接条
    public static String getJudge(float minStd, float std, TestParam testParam){
        String judge="未知";
        float judgeStdLow=0f;
        float judgeStdHigh=0f;
        if (testParam!=null){
            judgeStdLow=std*testParam.getResGoodCoeK3();
            judgeStdHigh=std*testParam.getResBadCoeK4();
            if(minStd<=judgeStdLow){
                judge="差";
            }else if(minStd<=judgeStdHigh){
                judge="良";
            }else{
                judge="优";
            }
        }
        return judge;
    }
    public static void main(String[] args) {
        Float[] f = {3.54f,3.55f,3.55f,3.56f,3.57f,3.56f,3.58f,3.58f,3.56f};