Fix negative numbers being displayed wrong
This commit is contained in:
parent
41431a13bd
commit
a43521c579
@ -117,9 +117,19 @@ fun BigInteger.formatSiComponent(suffix: Any = "", decimalPlaces: Int = 3, forma
|
||||
private val never = BooleanSupplier { false }
|
||||
|
||||
private fun reformat(numbers: String): String {
|
||||
if (numbers.length <= 4)
|
||||
@Suppress("NAME_SHADOWING")
|
||||
var numbers = numbers
|
||||
|
||||
if (numbers.isEmpty() || numbers.length <= 4)
|
||||
return numbers
|
||||
|
||||
val negative = numbers[0] == '-'
|
||||
|
||||
if (negative && numbers.length == 5)
|
||||
return numbers
|
||||
else if (negative)
|
||||
numbers = numbers.substring(1)
|
||||
|
||||
val result = CharArrayList((numbers.length * 1.6).roundToInt())
|
||||
|
||||
var dot = numbers.lastIndexOf('.')
|
||||
@ -145,6 +155,9 @@ private fun reformat(numbers: String): String {
|
||||
result.add(numbers[i])
|
||||
}
|
||||
|
||||
if (negative)
|
||||
result.add('-')
|
||||
|
||||
return String(CharArray(result.size) {
|
||||
result.getChar(result.size - it - 1)
|
||||
})
|
||||
|
Loading…
Reference in New Issue
Block a user