Android - 将小数显示为带格式的分数(反之亦然)

Android - Displaying decimal as formatted fraction (and vice versa)

在 Java 中,假设我有一个名为 decimaldouble 变量,其赋值为 0.333,我将如何将其显示为 "proper", 带格式的分数 - 分母上的分子用直线分隔(而不是简单地显示 1/3)?

编辑:解决方案之一是使用 Apache Commons 数学库,即 Fractions 包。引用文档:

A fraction number, can be built from two integer arguments representing numerator and denominator or from a double which will be approximated:

Fraction f = new Fraction(1, 3); // 1 / 3
Fraction g = new Fraction(0.25); // 1 / 4

所以你之后需要做的就是显示它,一个简单的方法是使用 android.text.Html 方法 fromHtml(String source, int flags) 和上标和下标标签。请注意,这是在 API 级别 24 中添加的并已更改 fromHtml(String source).