我有一个int:
int f=1234;//or f=23 f=456 ...
Run Code Online (Sandbox Code Playgroud)
我想得到:
float result=0.1234; // or 0.23 0.456 ...
Run Code Online (Sandbox Code Playgroud)
不要使用:
float result = parseFloat ("0."+f);
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法?
谢谢
Mar*_*iot 10
怎么样?
float result = f/1000.0f;
Run Code Online (Sandbox Code Playgroud)
更一般地说,如果你需要为各种值的大小调整大小,f你可以这样做:
int divisor;
for(divisor = 1; f / divisor > 0; divisor *= 10);
float result = (float)f/(float)divisor;
Run Code Online (Sandbox Code Playgroud)
或者更简洁地使用对数:
float result = f / Math.pow(10, Math.floor(Math.log10(f))+1);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
655 次 |
| 最近记录: |