当前位置: 首页 > 知识库问答 >
问题:

kotlin中的十进制格式

姬康平
2023-03-14

是否可以使用一种方法或其他方法,而不是“%.6f”。格式(值)以实现相同的目标?这是我的代码:

println("%.6f".format(value))

我想让它更具动态性和可读性

共有3个答案

金子轩
2023-03-14

您可以使用DecimalFormat类对给定的数字进行四舍五入。更多信息

i、 e。

val num = 1.345672
    val df = DecimalFormat("#.######")
    df.roundingMode = RoundingMode.CEILING

    println(df.format(num))
郑博厚
2023-03-14

你可以为你的项目做一个扩展函数,这是静态编程语言非常强大的特性,函数是这样的:

fun Double.roundDecimal(digit: Int) = "%.${digit}f".format(this)

只需将其放在静态编程语言文件中,然后您就可以在项目中的任何地方访问它:

fun main() {
    val number = 0.49555

    println(number.roundDecimal(2))
    println(number.roundDecimal(3))
}

输出:

0.50
0.496
史谦
2023-03-14

你可以随时使用

String.format("%.6f", value)

但是你可以在变量中提取格式

val FORMAT_FLOAT = "%.6f"
println(String.format(FORMAT_FLOAT, value))

这取决于你的喜好。祝你好运

 类似资料:
  • 问题内容: 我在格式化双精度小数时遇到一些问题。如果我有一个双精度值,例如4.0,我该如何格式化小数位使其改为4.00? 问题答案: 一种方法是使用NumberFormat。

  • 我在格式化双精度小数时遇到了一些问题。如果我有一个双精度值,例如4.0,我如何设置小数的格式,使其变为4.00?

  • 我想创建一个十进制格式化程序,它最多可以显示两个十进制数字,并带有一个给定的分隔符。 例如,使用分隔符 我想用静态编程语言来做这件事,我想我必须使用但是不明白如何做。你能帮我吗?

  • 我正在使用DecimalFormats将双打格式化为字符串。然后这个字符串被集成到我的表示层中。 问题:我想保留所有的小数。示例:“12345678.123456789” 格式:#.#- 我可以用##########对于大小数点,但是如果小数点更长呢? 我发现我的小测试程序很有用,想和大家分享。 你能帮我显示所有小数吗? 这导致: 编辑:一位用户提到了一个相关的问题:如何很好地将浮点数格式化为字符

  • 有没有办法防止对象自动将小数点向右移动两位? 此代码: 产生: 但是我希望它能产生:

  • 我只想得到这样的十进制键盘: 但我明白: 这就是我所做的 如果我改变,我会得到这个: android: digits="0123456789"android: inputType="numberDecimal"