Вы можете использовать JScience ...
Вот пример преобразования килограмма в грамм: -
double gram = Measure.valueOf(5, SI.KILOGRAM).doubleValue(SI.GRAM);
System.out.println(gram);
Вот все доступные единицы: -
for (Unit<?> unit : SI.units()) {
System.out.println(unit);
}
Распечатка:
m/s?
F
lm
A
C
N
H
J
lx
K
m/s
Wb
m?
Gy
T
W
kg
V
Ω
S
kat
Pa
sr
m
m?
mol
bit
°C
Hz
s
Bq
Sv
rad
cd
Кстати, я использую JRE 1.4-совместимый двоичный файл из JScience , и мне также нужен JSR 275 (я вытащил это из Maven):
<dependency>
<groupId>javax.measure</groupId>
<artifactId>jsr-275</artifactId>
<version>1.0.0</version>
</dependency>
Вот мои заявления об импорте, если кому-то интересно: -
import javax.measure.units.SI;
import javax.measure.units.Unit;
import org.jscience.physics.measures.Measure;