Lua中保留兩位小數

2021-10-05 04:48:15 字數 757 閱讀 9495

在使用lua進行開發的時候,經常會遇到保留n位小數的問題,這裡以保留兩位小數為例,記錄一下需要注意的地方!

在選擇處理方案之前,首先要確認需求,搞清楚保留兩位小數是指小數點後第三位四捨五入還是從小數點後第三位開始直接捨去!

小數點後第三位四捨五入

string.format("%.2f", num)

local num1, num2 = 0.1234, -1.5678

print(string.format("%.2f", num1), string.format("%.2f", num2))

-- 0.12 -1.57

-- 保留n位小數

function keepdecimaltest(num, n)

if type(num) ~= "number" then

return num

endn = n or 2

return string.format("%." .. n .. "f", num)

endprint(keepdecimaltest(num1, 3), keepdecimaltest(num2, 3))

-- 0.123 -1.568

string.format返回值的型別為string

從小數點後第三位開始直接捨去

num - num % 0.01

-- 保留n位小數

function keepdec

JS中保留兩位小數

這裡使用字串的 123.0000 是因為如果使用var number 123.0000這種number型別宣告方式js會把後面的4個0自動省略為123.var number 123.0000 d d d 該規則中的 1代表取第乙個括號的內容,來替換當前字串,在括號外加上 d 是為了匹配123.000...

關於js中保留兩位小數

numberobject.tofixed num 關於這裡的num,是必填的,用於規定小數的位數,是 0 20 之間的值,包括 0 和 20,如果省略了該引數,將用 0 代替。關於這個方法的返回值,返回值型別是字串並不是數值!今天我用了這個方法取兩位小數,最後累加的結果嚇我一跳,是把所有結果當成字串...

java中保留兩位小數的方法

1.bigdecimal的setscale roundingmode 捨入模式 1.up down 基準為數字0 2.ceiling floor 基準為正負無窮大 3.half up 通常學校裡講的四捨五入 去符號四捨五入,再加回符號 4.half down 向數字方向捨入的捨入模式,如果與兩個相鄰...