博客
关于我
Groovy In Action 笔记 (3) -- 基本数据类型
阅读量:619 次
发布时间:2019-03-13

本文共 1635 字,大约阅读时间需要 5 分钟。

Groovy中所有类型均为引用类型。即使是Java中的8种Primitive Type,groovy中背后使用的都是对应的包装类。没有boxing,unboxing操作.

一下为一些基本类型操作

//Integerdef age = 10println("age++ " + (age++)) // age++ 10, 先输出,再自增assert age == 11println("++age " + (++age)) // ++age 12,先自增,再输出assert age == 12assert 12.toString() == age.toString() // 可直接对常量使用方法assert 12.8.toInteger() == 12 // 可直接对常量使用方法//floatdef weight_f = 1.2fdef weight_F = 1.2Fassert weight_f.class.name == Float.nameassert weight_F.class.name == Float.name//doubledef weight_d = 1.2ddef weight_D = 1.2Dassert weight_d.class.name == Double.nameassert weight_D.class.name == Double.name//longdef meter_l = 1000Lassert meter_l.class.name == Long.name//bigIntegerdef universe_age_g = 1000Gassert universe_age_g.class.name == BigInteger.name//bigDecimaldef decimal_default = 1.2  ///注意默认为 bigDecimal类型,和Java不同def decimal_b= 1.2gassert decimal_default.class.name == BigDecimal.nameassert decimal_b.class.name == BigDecimal.name// operatorsdef compare_a = 20def compare_b = 10assert compare_a > compare_bassert compare_b < compare_aassert (compare_a <=> compare_b) == 1  // <=> 相当于 compareTo函数assert 5 / 2 == 2.5 //默认bigDecimalassert 3 % 2 == 1 //取余数 a.mod(b)assert 5.intdiv(2) == 2 //整除assert compare_a >> 2 == 5 //右移两位,相当于除以4assert compare_a << 2 == 80 //左移两位,相当于乘以4//动态数据类型变化 --- Groovy中所有类型均为 引用类型。 即使是Java中的8种Primitive Type,groovy中背后使用的都是对应的包装类。没有boxing,unboxing操作def type_variant = 100assert type_variant.class.name == Integer.nametype_variant = 100fassert type_variant.class.name == Float.nametype_variant = 100dassert type_variant.class.name == Double.nametype_variant = "STRING"assert type_variant.class.name == String.name

 

转载地址:http://napaz.baihongyu.com/

你可能感兴趣的文章
Netty WebSocket客户端
查看>>
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器和 Handler 调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty 高性能架构设计
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
netty2---服务端和客户端
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>