5、Groovy Math<o:p></o:p>
l Groovy支持访问所有的Java Math类和操作<o:p></o:p>
l 为了使math操作在脚本编写时尽可能直观,Groovy math模型支持文字化math操作<o:p></o:p>
l 缺省计算使用的是精确的小数(BigDecimal),如:<o:p></o:p>
1.1 + 0.1 == 1.2<o:p></o:p>
返回的是true,而不是false(不象在Java中使用float或double)<o:p></o:p>
(1)数字的文字表示<o:p></o:p>
l Groovy的小数文字表示是java.math.BigDecimal的实例,而不是浮点类型(Float或Double)<o:p></o:p>
l Float和Double可以使用后面讲的后缀(F和D)方法来创建<o:p></o:p>
l 小数的指数形式也支持,如12.3e-23<o:p></o:p>
l 十六进制和八进制也支持,十六进制前缀0x,八进制前缀0<o:p></o:p>
l 整数类型可以使用后面讲的后缀(I、L和G)方法来创建,如果不指定根据数值的大小使用合适的类型<o:p></o:p>
l 数字类型的后缀文字表示<o:p></o:p>
_Type_<o:p></o:p>
|
_Suffix_<o:p></o:p>
|
_BigInteger_<o:p></o:p>
|
G<o:p></o:p>
|
_Long_<o:p></o:p>
|
L<o:p></o:p>
|
_Integer_<o:p></o:p>
|
I<o:p></o:p>
|
_BigDecimal_<o:p></o:p>
|
(缺省)<o:p></o:p>
|
_Double_<o:p></o:p>
|
D<o:p></o:p>
|
_Float_<o:p></o:p>
|
F<o:p></o:p>
|
l 例子:<o:p></o:p>
assert 42I == new Integer("42");<o:p></o:p>
assert 123L == new Long("123");<o:p></o:p>
assert 2147483648 == new Long("2147483648"); //Long type used, value too large for an Integer<o:p></o:p>
assert 456G == new java.math.BigInteger("456");<o:p></o:p>
assert 123.45 == new java.math.BigDecimal("123.45"); //default BigDecimal type used<o:p></o:p>
assert 1.200065D == new Double("1.200065");<o:p></o:p>
assert 1.234F == new Float("1.234");<o:p></o:p>
assert 1.23E23D == new Double("1.23E23");<o:p></o:p>
(2)Math操作<o:p></o:p>
l Groovy的Math实现很接近Java 1.5 BigDecimal Math模型的实践<o:p></o:p>
l Java.lang.Number包括其子类的二元操作(除了除法)会根据下表自动转换参数类型<o:p></o:p>
<o:p></o:p>
|
_BigDecimal_<o:p></o:p>
|
_BigInteger_<o:p></o:p>
|
_Double_<o:p></o:p>
|
_Float_<o:p></o:p>
|
_Long_<o:p></o:p>
|
_Integer_<o:p></o:p>
|
_BigDecimal_<o:p></o:p>
|
BigDecimal<o:p></o:p>
|
BigDecimal<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
|
BigDecimal<o:p></o:p>
|
_BigInteger_<o:p></o:p>
|
BigDecimal<o:p></o:p>
|
BigInteger<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
BigInteger<o:p></o:p>
|
BigInteger<o:p></o:p>
|
_Double_<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
_Float_<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
_Long_<o:p></o:p>
|
BigDecimal<o:p></o:p>
|
BigInteger<o:p></o:p>
|
Double<o:p></o:p>
|
Double<o:p></o:p>
|
Long<o:p></o:p>
|
相关推荐
Groovy用户指南 Groovy用户指南
groovy用户指南,中文版的嗷,支持一下吧
groovy学习大礼包,包括groovy用户指南,groovy解惑,Groovy轻松入门
这本用户指南还并不完善, 就像 Gradle 一样还在开发当中. 在这本指南中, Gradle 的一些功能并没有被完整的展示出来. 一些内容的解释也并不是十分的清楚, 或者假设关于 Gradle 你知道得更多. 我们需要你的帮助来完善...
中文翻译《Gradle 3 用户指南》,Gradle是一个构建系统, 我们认为它是 java ( JVM ) 世界中构建技术的一个飞跃. Gradle 提供了: 一个像 Ant 一样的非常灵活的通用构建工具 一种可切换的, 像 maven 一样的基于合约构建...
Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大...本套资源中包含了:Groovy轻松入门 ,Groovy中文教程, Groovy用户指南, Groovy学习笔记,Groovy官方demo,五本书!
详细介绍了分布式架构和流动式架构、dubbo服务治理原理架构、用法
Elasticsearch权威指南,带完整目录。 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的...
使用Groovy beans DSL开发应用 iv. 57. 接下来阅读什么 9. VIII. 构建工具插件 i. 58. Spring Boot Maven插件 i. 58.1. 包含该插件 ii. 58.2. 打包可执行jar和war文件 ii. 59. Spring Boot Gradle插件 i. 59.1. ...
用户指南: 【对象查询指南】() 【CacheStore Groovy Shell 指南】() 变更日志: [更新日志] () 下载 CacheStore 代码库: 远程缓存存储包: 集群缓存存储包: 要将 CacheStore 及其模块添加到您自己的项目中,请将...
基于Groovy的领域特定语言(DSL),用于描述和操作构建过程 支持maven/lvy的依赖管理 非常灵活,并不强迫用户一定要使用最佳的构建方式 插件可以暴露自身的语言和接口api给构建文件使用 支持IDE集成 2.2 需求...
用户相关配置和仓库 2.5.2. 升级Maven 2.6. 获得Maven帮助 2.7. 使用Maven Help插件 2.7.1. 描述一个Maven插件 2.8. 关于Apache软件许可证 I. Maven实战 3. 一个简单的Maven项目 3.1. 简介 3.1.1. ...
此版本包括使用 Java 18 构建代码和运行 Gradle、使用 Groovy 4 构建代码、响应速度更快的持续构建、改进的依赖解析诊断以及配置缓存改进以提高性能、为 JVM 提供 Adoptium 工具链等等,官方建议用户进行升级。...
用户指南( ) 将此库添加到test范围内的pom.xml中:< dependency>< groupId>com.homeaway.devtools.jenkins</ groupId>< artifactId>jenkins-spock</ artifactId>< scope>test</ scope></ dependency> 检查以查找...
《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...
《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...
《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...
《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...