`

Groovy用户指南(5)

阅读更多

5Groovy 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中使用floatdouble<o:p></o:p>

1)数字的文字表示<o:p></o:p>

l         Groovy的小数文字表示是java.math.BigDecimal的实例,而不是浮点类型(FloatDouble<o:p></o:p>

l         FloatDouble可以使用后面讲的后缀(FD)方法来创建<o:p></o:p>

l         小数的指数形式也支持,如12.3e-23<o:p></o:p>

l         十六进制和八进制也支持,十六进制前缀0x,八进制前缀0<o:p></o:p>

l         整数类型可以使用后面讲的后缀(ILG)方法来创建,如果不指定根据数值的大小使用合适的类型<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>

2Math操作<o:p></o:p>

l         GroovyMath实现很接近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>

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学习大礼包,包括groovy用户指南,groovy解惑,Groovy轻松入门

    Gradle用户指南中文版

    这本用户指南还并不完善, 就像 Gradle 一样还在开发当中. 在这本指南中, Gradle 的一些功能并没有被完整的展示出来. 一些内容的解释也并不是十分的清楚, 或者假设关于 Gradle 你知道得更多. 我们需要你的帮助来完善...

    Gradle 用户指南 .pdf

    中文翻译《Gradle 3 用户指南》,Gradle是一个构建系统, 我们认为它是 java ( JVM ) 世界中构建技术的一个飞跃. Gradle 提供了: 一个像 Ant 一样的非常灵活的通用构建工具 一种可切换的, 像 maven 一样的基于合约构建...

    GroovyPDF文档

    Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大...本套资源中包含了:Groovy轻松入门 ,Groovy中文教程, Groovy用户指南, Groovy学习笔记,Groovy官方demo,五本书!

    alibaba dubbo操作用户指南

    详细介绍了分布式架构和流动式架构、dubbo服务治理原理架构、用法

    elasticsearch权威指南中文版.rar

    Elasticsearch权威指南,带完整目录。 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的...

    springboot参考指南

    使用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. ...

    竞拍系统源码java-CacheStore:具有强大API的键值混合存储系统,利用内存缓存和磁盘来优化性能

    用户指南: 【对象查询指南】() 【CacheStore Groovy Shell 指南】() 变更日志: [更新日志] () 下载 CacheStore 代码库: 远程缓存存储包: 集群缓存存储包: 要将 CacheStore 及其模块添加到您自己的项目中,请将...

    xmljava系统源码-gradle_user_guide:Gradle用户指南

    基于Groovy的领域特定语言(DSL),用于描述和操作构建过程 支持maven/lvy的依赖管理 非常灵活,并不强迫用户一定要使用最佳的构建方式 插件可以暴露自身的语言和接口api给构建文件使用 支持IDE集成 2.2 需求...

    Maven权威指南 很精典的学习教程,比ANT更好用

    用户相关配置和仓库 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. ...

    gradle-7.5.1-all.zip 快速下载

    此版本包括使用 Java 18 构建代码和运行 Gradle、使用 Groovy 4 构建代码、响应速度更快的持续构建、改进的依赖解析诊断以及配置缓存改进以提高性能、为 JVM 提供 Adoptium 工具链等等,官方建议用户进行升级。...

    jenkins-spock:使用Spock对Jenkins管道代码进行单元测试

    用户指南( ) 将此库添加到test范围内的pom.xml中:&lt; dependency&gt;&lt; groupId&gt;com.homeaway.devtools.jenkins&lt;/ groupId&gt;&lt; artifactId&gt;jenkins-spock&lt;/ artifactId&gt;&lt; scope&gt;test&lt;/ scope&gt;&lt;/ dependency&gt; 检查以查找...

    SPRING攻略 第2版.pdf

    《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...

    SPRING攻略 第2版

    《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...

    Spring攻略(第二版)高清版

    《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...

    SPRING攻略 第2版 (带书签)(一)

    《Spring攻略(第2版)》是Spring平台的深入指南,它引导你进入Spring 3及其辅助框架的最新技术。《Spring攻略(第2版)》不仅为你全面而又深入地讲解各种概念,并且在每一章中都配备了一系列详细的代码示例,以帮助读者...

Global site tag (gtag.js) - Google Analytics