Java中的烹饪单位

gre*_*egm 21 java units-of-measurement

是否有任何开源库可用于表示烹饪单位,例如Java中的Teaspoon和tablepoon?

我只找到了JSR-275(https://jcp.org/en/jsr/detail?id=275),这很棒,但不了解烹饪单位.

小智 13

JScience是可扩展的,因此您应该能够创建javax.measure.unit.SystemOfUnits的子类.您将创建一些这样的公共静态最终声明:

public final class Cooking extends SystemOfUnits {
  private static HashSet<Unit<?>> UNITS = new HashSet<Unit<?>>();

  private Cooking() {
  }

  public static Cooking getInstance() {
    return INSTANCE;
  }
  private static final Cooking INSTANCE = new SI();

  public static final BaseUnit<CookingVolume> TABLESPOON = si(new BaseUnit<CookingVolume>("Tbsp"));

  ...

   public static final Unit<CookingVolume> GRAM = TABLESPOON.divide(1000);

}

public interface CookingVolume extends Quantity {
  public final static Unit<CookingVolume> UNIT = Cooking.TABLESPOON;
}
Run Code Online (Sandbox Code Playgroud)

只要您知道转换因子是什么,定义其他单位和转换就非常简单.