EXCEL 的这个公式转为JAVA代码后面的固定数组用枚举表示:=ROUNDMAXAQ5-5000-AR5-AS5-AT5-AU5-AV5+0003010202503035045-021014102660441071601516002
下面是将这个公式转换为Java代码的示例:
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
enum Values {
VALUE_0_03(0.03), VALUE_0_1(0.1), VALUE_0_2(0.2), VALUE_0_25(0.25),
VALUE_0_3(0.3), VALUE_0_35(0.35), VALUE_0_45(0.45);
private final double value;
Values(double value) {
this.value = value;
}
public double getValue() {
return value;
}
}
enum Constants {
CONSTANT_0(0), CONSTANT_210(210), CONSTANT_1410(1410),
CONSTANT_2660(2660), CONSTANT_4410(4410), CONSTANT_7160(7160),
CONSTANT_15160(15160);
private final int value;
Constants(int value) {
this.value = value;
}
public int getValue() {
return value;
}
}
public static void main(String[] args) {
double AQ5 = 10000; // Replace with your actual value
double AR5 = 2000; // Replace with your actual value
double AS5 = 3000; // Replace with your actual value
double AT5 = 4000; // Replace with your actual value
double AU5 = 5000; // Replace with your actual value
double AV5 = 6000; // Replace with your actual value
double result = Math.max((AQ5 - 5000 - AR5 - AS5 - AT5 - AU5 - AV5 + 0)
* (Values.VALUE_0_03.getValue() - Constants.CONSTANT_0.getValue())
- (Values.VALUE_0_1.getValue() - Constants.CONSTANT_210.getValue())
- (Values.VALUE_0_2.getValue() - Constants.CONSTANT_1410.getValue())
- (Values.VALUE_0_25.getValue() - Constants.CONSTANT_2660.getValue())
- (Values.VALUE_0_3.getValue() - Constants.CONSTANT_4410.getValue())
- (Values.VALUE_0_35.getValue() - Constants.CONSTANT_7160.getValue())
- (Values.VALUE_0_45.getValue() - Constants.CONSTANT_15160.getValue()), 0);
BigDecimal roundedResult = BigDecimal.valueOf(result).setScale(2, RoundingMode.HALF_UP);
System.out.println(roundedResult);
}
}
请注意,你需要将AQ5,AR5,AS5,AT5,AU5和AV5的值替换为你实际的值。在示例代码中,我们使用了BigDecimal类来对结果进行四舍五入并保留两位小数
原文地址: https://www.cveoy.top/t/topic/h7s4 著作权归作者所有。请勿转载和采集!