加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Groovy 学习笔记总结 Part.1

发布时间:2020-12-14 16:49:06 所属栏目:大数据 来源:网络整理
导读:? 没 有市场就没有需求, 有需求没市场的事情从公司的角度去考虑;不应该给你实现需求的成本的!就这样我们接到一个让你业余用业余时间去完成的任务; 活动配置数据生成工具。 ? 为了顺利把这个工具做成,你可以拿任何一个你想学的语言去干这事。 纠结啊 。


? 有市场就没有需求, 有需求没市场的事情从公司的角度去考虑;不应该给你实现需求的成本的!就这样我们接到一个让你业余用业余时间去完成的任务; 活动配置数据生成工具。

? 为了顺利把这个工具做成,你可以拿任何一个你想学的语言去干这事。 纠结啊 。。。, 于是抱着让这是早日完成的心态。 我就选择了用 Groovy 来做这件事请; 理由很简单。 Java Swing 做 GUI 应用程序实在太麻烦; 而 Groovy 中的 SwingBuilder 取弥补了 Swing 中的部分不足。 能够简化界面控件使用与代码, 但内在的事件驱动模型是没有变化的。 于是乎开始动手吧。


1. 开发环境

Mac 10.6.x + IntelliJ IDEA 14 + Groovy 2.3.6

Google 上有很多的配置介绍。


2. GroovyConsole 初试

x?=?1;
println?x;

x?=?new?java.util.Date();
println?x;

x?=?-3.1499392;
println?x;

x?=?false;
println?x;

x?=?Boolean.TRUE;
println?x;

x?=?'Hi'
println?x;

command + R 结果如下

1

Sun Dec 28 00:50:45 CST 2014

-3.1499392

false

true

Hi


总结:x 很像 JavaScript 中万能的 var 申明类型,不过此处连 var 都没有太简单了。 脚本语言啊! 弱类型。


3. Collection 测试

x?=?new?java.util.Date();
tempList?=?[1,?-2,?0.3245788663,?'a',?x];
println?tempList[0];
println?tempList[1];
println?tempList[2];
println?tempList[3];
println?tempList[4];

command + R 结果如下

1

-2

0.3245788663

a

Sun Dec 28 00:50:45 CST 2014


总结: 弱类型集合


4. Map 测试

scores?=?[?"Brett":100,?"Pete":"Did?not?finish",?"Andrew":86.87934?]

println?scores["Pete"];

> Did not finish


如果将 key 不用双引号 “” ?呢,结果如何呢?

println?scores["Pete"];

? ? Exception thrown

? ? groovy.lang.MissingPropertyException: No such property: Pete for class: ConsoleScript23

? ? at ConsoleScript23.run(ConsoleScript23:3)


至此我们能不能推断非双引号包围的它就认为是类呢。 有待确认


5. 空的集合与 Map

emptyMap?=?[:]
emptyList?=?[]
println?emptyMap.size()
println?emptyList.size()

> 0

> 0


6. 条件判断

amPM?=?Calendar.getInstance().get(Calendar.AM_PM)
println?(amPM);
if?(amPM?==?Calendar.AM)
{
????println("Good?morning")
}?else?{
????println("Good?evening")
}

> 0

> Good morning


* else 删除也是可以的。


7. 逻辑与算术运算

titanicBoxOffice?=?1234600000
titanicDirector?=?"James?Cameron"
trueLiesBoxOffice?=?219000000
trueLiesDirector?=?"James?Cameron"
returnOfTheKingBoxOffice?=?752200000

returnOfTheKingDirector?=?"Peter?Jackson"
theTwoTowersBoxOffice?=?581200000

theTwoTowersDirector?=?"PeterJackson"
titanicBoxOffice?>?returnOfTheKingBoxOffice??//?evaluates?to?true
titanicBoxOffice?>=?returnOfTheKingBoxOffice?//?evaluates?to?true
titanicBoxOffice?>=?titanicBoxOffice?????????//?evaluates?to?true
titanicBoxOffice?>?titanicBoxOffice??????????//?evaluates?to?false
titanicBoxOffice?+?trueLiesBoxOffice?<?returnOfTheKingBoxOffice?+?theTwoTowersBoxOffice??//?evaluates?to?false

titanicDirector?>?returnOfTheKingDirector????//?evaluates?to?false,?because?"J"?is?before?"P"titanicDirector?<?returnOfTheKingDirector????//?evaluates?to?truetitanicDirector?>=?"James?Cameron"???????????//?evaluates?to?truetitanicDirector?==?"James?Cameron"???????????//?evaluates?to?true


至此,

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读