`
Javabengou
  • 浏览: 174006 次
  • 性别: Icon_minigender_1
  • 来自: 郴州
社区版块
存档分类
最新评论

Java笨狗groovy学习笔记—Getting Started

阅读更多

(-)变量
你可以给变量赋值. 像下面:

x = 1
println x
x = new java.util.Date()
println x
x = -3.1499392
println x
x = false
println x
x = "Hi"
println x

 (二)Lists and Maps

Groovy已经内置支持两种重要的数据类型, lists 和maps((Lists就像java中的数组一样来操作))Lists用来存储有序集合数据,例如:

myList = [1776, -1, 33, 99, 0, 928734928763]

 你可以使用[]来存取给定的项(索引开始位置为0):

println myList[0]

 输出结果:

1776

你也可以使用size方法来等到 list 长度:

println myList.size()

  输出结果:

6

但是通常你并不需要List的长度,因为不像Java,循环遍历一个List中的所有元素的首选方法是each(),详细信息在本学习笔记的"Code as Data"章节。

另一个本地数据结构叫 map,map用来存储”关联数组“或”词典“,即无序非均匀的集合,命名数据。例如,我们存储名字的IQ分数:

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

 注意,每个存储在map中的值都是不同的类型, Brett'是 integer,Pete是string, Andrew是floating 。

我们可以使用两种方法来访问map中的值:

println scores["Pete"]
println scores.Pete

 输出结果:

Did not finish
Did not finish

为map添加数据,语法与给list添加值类似,例如:

scores["Pete"] = 3

 随后取得其值:

println scores["Pete"]

 输出结果:

 3.

另外,你可以像下面这样创建空map和list:

emptyMap = [:](Map)
emptyList = [](List)
 

为了确定它们为空,可以像下列这样:

println emptyMap.size()
println emptyList.size()

 输出结果为0。

(三)Conditional Execution

任何一种语言的重要特性是在不同的条件下执行不懂的代码,简单的方法是使用"if":

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

上面的结果是:首先,他会判断()中表达式,随后依据结果是否为"true"或"false"来执行第一个或第2个代码块。注意"else"代码块不是必须的:

amPM = Calendar.getInstance().get(Calendar.AM_PM)
if (amPM == Calendar.AM)
{
println("Have another cup of coffee.")
}
 

(四)Boolean Expressions

在很多编程语言中这个是很特别的数据类型,它用来表示真实值,”true“或"false".Boolean就像其他数据类型一样可以储存在一个变量中:

myBooleanVariable = true

 更多Boolean表达式操作符:

* ==
* !=
* >
* >=
* <
* <=

 他们相当直观:

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         // evaulates to true
titanicBoxOffice > titanicBoxOffice          // evaulates to false
titanicBoxOffice + trueLiesBoxOffice < returnOfTheKingBoxOffice + theTwoTowersBoxOffice  //
evaluates to false
titanicDirector > returnOfTheKingDirector    // evaluates to false, because "J" is before "P"
titanicDirector < returnOfTheKingDirector    // evaluates to true
titanicDirector >= "James Cameron"           // evaluates to true
titanicDirector == "James Cameron"           // evaluates to true
 
4
1
分享到:
评论

相关推荐

    Groovy学习笔记 PDF版

    在《Groovy学习笔记》这本书中,你可能会学到如何快速入门Groovy,理解其基本语法,包括变量、控制流、类和对象的创建,以及如何利用Groovy的特性来提高开发效率。此外,书中可能还会涵盖Groovy在实际项目中的应用,...

    Groovy 学习笔记

    Groovy是一种动态、灵活的编程语言,它是Java平台上的一个重要的补充。Groovy结合了Python、Ruby和Smalltalk等语言的特性,同时保留了与Java的无缝集成能力,使得它在编写脚本、构建工具、Web应用以及企业级应用程序...

    Java中使用Groovy的三种方式

    在Java开发中,Groovy是一种强大的、动态类型的脚本语言,它可以无缝地与Java代码集成,为开发者提供了更简洁、灵活的语法。本文将深入探讨在Java项目中使用Groovy的三种主要方式,并阐述它们各自的优势和应用场景。...

    Groovy学习笔记.pdf

    Groovy是一种动态、灵活的编程语言,它是Java平台上的一个主要补充,特别是在脚本编写和快速原型设计方面表现突出。...这份"Groovy学习笔记.pdf"应该会提供一个良好的起点,帮助你踏上Groovy的学习之旅。

    Java整合Groovy脚本笔记

    Java整合Groovy脚本,Java整合Groovy脚本Java整合Groovy脚本,Java整合Groovy脚本Java整合Groovy脚本,Java整合Groovy脚本Java整合Groovy脚本,Java整合Groovy脚本Java整合Groovy脚本,Java整合Groovy脚本Java整合...

    groovy和Java相互调用1

    标题中的“Groovy和Java相互调用1”指的是在编程时如何在Groovy语言环境中调用Java类,以及反之,如何在Java程序中调用Groovy类。这是一种跨语言交互的方式,特别是在混合使用Groovy和Java的项目中非常常见。 ...

    Java调用Groovy,实时动态加载数据库groovy脚本

    1. 引入Groovy库:在Java项目中添加Groovy的相关依赖,通常是`groovy-all`,确保Java能够访问Groovy运行时环境。 2. 创建GroovyClassLoader:使用这个类加载器可以动态加载和执行Groovy脚本。它继承自Java的...

    Groovy学习笔记

    ### Groovy学习笔记知识点梳理 #### 一、Groovy简介 - **概念**:Groovy是一种灵活的脚本语言,其设计初衷是为了更好地服务于Java开发者。它具备许多现代动态语言的特点,比如Python和Ruby,同时又能够无缝地与Java...

    读书笔记:函数式编程 scala,java8,groovy 学习.zip

    读书笔记:函数式编程 scala,java8,groovy 学习

    groovy学习笔记

    以下是对Groovy学习笔记各章节的详细解释: ### 第1章:数字和字符串 在Groovy中,所有的数字都是Object类型的,这意味着你可以在对象上调用方法。例如,你可以直接在数字上使用加减乘除等运算符,如`12 + 8`。...

    Java JDK 7学习笔记 PDF

    7. **动态语言支持**:JDK 7引入了 invokedynamic 指令,这是Java虚拟机的四大基础操作之一,用于支持动态类型语言的实现,如Groovy和JRuby。 8. **异常链**:JDK 7允许在捕获异常时保留原始异常信息,形成异常链,...

    基于Groovy与Java融合的Groovy学习实践之路设计源码

    该项目是一套基于Groovy与Java融合的Groovy学习实践之路源码设计,总计包含91个文件,其中Groovy文件71个,XML文件6个,Java文件4个,Markdown文件2个,JSON文件2个,TXT文件2个,Git忽略文件1个,IML文件1个,以及...

    Groovy学习笔记 Struts2集成--Groovy类作为Action

    通过阅读文章《Groovy学习笔记 Struts2集成--Groovy类作为Action》,你可以更深入地了解如何在实际项目中利用Groovy的特性来优化Struts2应用。提供的压缩包文件`struts2-groovy-plugin`可能包含了Struts2 Groovy插件...

    hugo110-java_run_groovy-master_java_

    标题“hugo110-java_run_groovy-master_java_”表明这是一个关于使用Java运行Groovy脚本的项目,可能是某个GitHub...通过学习和实践这个项目,你可以掌握如何在Java环境中利用Groovy的灵活性和便利性,提升开发效率。

    SpringBoot-Gradle-Maven-Java-Groovy

    SpringBoot、Gradle、Maven、Java和Groovy是Java生态系统中的重要组成部分,它们在现代软件开发中扮演着至关重要的角色。这篇详细的知识点解析将深入探讨这些技术及其相互关系。 1. **SpringBoot**: SpringBoot是...

    [Groovy] Making Java Groovy 英文版

    Making Java Groovy is a practical handbook for developers who want to blend Groovy into their day to day work with Java It starts by introducing the key differences between Java and Groovy and how you...

    java 动态脚本语言 精通 Groovy

    学习和精通Groovy能帮助Java开发者提高生产力,编写更加简洁、高效的代码,并能更好地利用Java生态系统中的资源。无论是在日常开发、自动化任务,还是在构建复杂系统时,Groovy都能提供强大的支持。通过阅读《Master...

    Java Groovy

    通过学习Groovy,开发者不仅可以提升个人技能,还能为现有的Java项目带来新的活力。无论是希望通过引入Groovy来提高开发效率,还是想要探索新的编程范式,《Making Java Groovy》都是一本值得推荐的指南。本书不仅...

Global site tag (gtag.js) - Google Analytics