2012-09-05 61 views
0

我有NSSlider,並且我保證它是變化的。但是我希望我的操作僅在滑塊的浮點值爲2.2300003.410000時才起作用。如何檢查float是否只有2個小數位不等於0

if (floatValue is y.xx0000) { 
    doSomething; 
} 

我的意思是我希望做一些操作只是如果我的浮法只有2位小數不等於0,我怎麼能這樣做呢?

回答

4

僅限只有兩個非零小數位的浮點值是形式爲n.00,n.25,n.50或n.75的數字。所有其他值都有兩個以上的非零小數位。例如,你的例子3.41並不是真正的「3.41」。相反,它是:

3.410000000000000142108547152020037174224853515625 

和 「2.23」 居然是:

2.229999999999999982236431605997495353221893310546875 

那麼,你究竟意欲何爲?

+0

如果例如我的滑動界限是從1.5到1.6,我只想對這些值作出反應: '1.50,1.51,1.52,1.53,1.54,1.55,1.56,1.57,1.58,1.59,1.60 '和所有其他人(例如'1.510000000025251000125')我想被忽略。 – hockeyman

+0

哦,這很簡單:在1.5和1.6之間沒有浮點值,只有**在小數點後有兩位數字。這就是斯蒂芬在這個答案中所說的。這就是浮動工作... – lnafziger

+0

,如果你想象它是'1.50000000000000000000000'那麼浮動值存在嗎?或者它不能在逗號後只有一個或兩個大於0的數字? – hockeyman

相關問題