然后直接通过MathUtils调用~=方法进行比较
println(MathUtils.~=(a, b, 0.000001))
2.6 处理大数
1. 问题描述
你正在编写需要使用非常大的整数或十进制数的应用程序
2. 解决方案
你可以使用BigInt或BigDecimal类
不同于其在Java的对应类,这些类支持所有你使用数字类型的操作符
你也可以把它们转化为其他数字类型
为了避免错误,也可以在转化之前进行测试
3. 讨论
虽然Scala中的BigInt和BigDecimal是由Java中的BigInt和BigDecimal支持的,但是Scala中的类使用更为简便,并且它们是可变的,可以像其他数字类型一样操作。
2.7 生成随机数
1. 问题描述
你需要创建随机数,如测试应用程序、执行模拟以及许多其他情况
2. 解决方案
使用scala.util.Random来创建随机数
你可以指定随机生成数字的最大值
上述示例将会生成[0-99]之间的数字,你也可以生成随机Float(0.0到1.0之间的浮点数)
也可以生成随机Double(0.0到1.0之间的浮点数)
你也可以在创建Random时指定seed值,也可以之后调用setSeed方法进行设置
3. 讨论
Random类可以应对所有通常的使用,包括生成数字、设置最大值、设置seed值,也可以生成随机字符
Scala可以生成一段随机长度的数字,在测试时非常有用
也可以生成随机长度的浮点数
2.8 创建数字范围,列表或数组
1. 问题描述
你需要创建一个数字范围、列表或数组,如for循环或用于测试目的
2. 解决方案
使用Int类的方法来创建一个数字Range
也可以自定义间距
3. 讨论
在Scala中可以很轻易的创建数字范围,并且可以很轻易的将其转化为列表或者数组类型
更好的方式如下
2.9 格式化数字和货币
1. 问题描述
你想要格式化数字和货币来控制小数点和逗号,特别是用于打印输出。
2. 解决方案
对于简单的数字格式化,可以采用前篇博文提到的f字符串插值
添加逗号的一种简单方法是调用java.text.NumberFormat类的getIntegerInstance方法
在使用getIntegerInstance方法的时候可以指定地区
在处理浮点数时可以使用getInstance方法
对于货币格式,可以使用getCurrencyInstance方法
下面方法可以处理国际化货币
3. 讨论
主要讨论了使用Java的相关类来格式化数字和货币,也可以使用BigDecimal来处理货币的格式问题。
本篇博文学习了数字类的相关操作,可以看到Scala相比于Java简易很多,与Java也是无缝兼容的。也谢谢各位园友的观看~
出处:http://www.cnblogs.com/leesf456/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果觉得本文对您有帮助,您可以请我喝杯咖啡!