public enum Operator {
PLUS("+"),
MINUS("-");
private final String operator;
Operator(String operator) {
this.operator = operator;
}
public String getOperator() {
return operator;
}
public static Operator getByValue(String operator) {
for (Operator operatorEnum : Operator.values()) {
if (operatorEnum.getOperator().equals(operator)) {
return operatorEnum;
}
}
throw new IllegalArgumentException("Invalid value");
}
}
//////////
public enum MetricConvertor {
m(1000),
cm(10),
mm(1),
km(1000000),
dm(100);
private int scale;
MetricConvertor(int scale) {
this.scale = scale;
}
public int getScale() {
return scale;
}
}
/////////
public class Application {
public static void main(String[] args) {
int scale = MetricConvertor.valueOf("m").getScale();
}
Я хочу создать калькулятор, который может вычислять метрич. c значение расстояния из выражения, которое содержит различные шкалы и системы.
Выходные данные должны быть указаны пользователем.
Разрешены только сложение и вычитание.
Вывод в нижнем блоке.
Выражение: 10 см + 1 м - 10 мм
Результат: 1090 мм
Я застрял на этом этапе, как Могу ли я добавить или вычесть значения для списка и преобразовать их в системе с самым низким масштабом (например, выше мм, но это может быть dm, если добавляются, например, dm + m + km)