作者:曾wujcik_663 | 来源:互联网 | 2022-12-05 22:20
我正在开发一个数学函数,并希望在一个范围内的每个浮点值测试其输出.我已经在C++中完成了这个,但现在我想将性能与Java进行比较.如何遍历Java中的所有浮点值?
在C++中,我只是使用unsigned int迭代必要的范围,然后将其重新解释为float指针
float *x = reinterpret_cast(&i);
但是,如何在Java中完成?最好快点,因为我正在测试性能(没有String解决方案,谢谢你:D).如果没有快速的方法,我想我可以将一百万个预先计算成一个数组并迭代它们.但这会破坏缓存性能,所以我认为使用随机数对我的情况会更好,尽管它不会完全达到所有值.
1> Loris Securo..:
您可以使用Math.nextUp(float)
获取下一个浮点数.
从1开始打印下一个100个浮点的示例:
float n = 1f;
System.out.println(n);
for (int i = 0; i <100; i++) {
n = Math.nextUp(n);
System.out.println(n);
}