- 浏览: 538164 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (174)
- Groovy (28)
- Grails (14)
- DHTML (5)
- JS (4)
- jQuery (16)
- JAVA (16)
- Eclipse (4)
- Hibernate (2)
- Resin (2)
- Oracle (25)
- Maven (4)
- Struts2 (1)
- WebWork2 (3)
- Tomcat (2)
- Windows7 (4)
- Griffon (2)
- PowerDesigner (1)
- Pro*C (2)
- JDK (1)
- 乱码 (2)
- WebService (3)
- .NET (1)
- 性能 (2)
- 安装 (1)
- 命令行 (1)
- function (1)
- type (1)
- Mysql (1)
- 同步 (1)
- Synchronized (1)
- json (3)
- Office (1)
- Visio (1)
- 自定义形状 (1)
- jsong (0)
- gson (1)
- fastjson (1)
- EM (1)
- DB2 (6)
- Sequence (1)
- RHEL5.x (1)
- WAS6.1 ND (1)
- SQL (1)
- -964 (1)
- Linux (4)
- Date (1)
- Format (1)
- Add (1)
- SHELL (1)
- CSS (2)
- Bootstrap (1)
- nginx (1)
- Openresty (2)
- JWPlayer (1)
- showdoc (1)
- 常用网址 (1)
- lua (2)
- SpringBoot (1)
- Office pdf linux (1)
最新评论
-
纵观全局:
Great
阿里巴巴开源JSON解析组件FastJson简单使用笔记 -
guxuede:
...
Groovy编程技巧 -
a1439226817:
groovy用的多吗?我还没发现有哪个java项目在用这个?
Groovy同步 -
晴子9034:
在网上搜到的几乎全是说满了就扩充。但是我有个疑问,满了就扩充, ...
解决DB2 SQLCODE=-964日志文件满的问题 -
在世界的中心呼喚愛:
好东西啊,就用这个包。
阿里巴巴开源JSON解析组件FastJson简单使用笔记
http://www.groovyq.net/content/%E6%89%93%E5%8A%A8%E4%BD%A0%E6%9C%8B%E5%8F%8B%E7%9A%8411%E6%9D%A1groovy%E8%B6%85%E7%82%AB%E4%BB%A3%E7%A0%81
1. List中的每个元素乘2:
2. List求和:
3. List中是否含有某个字符串
上述代码结果为false,如果tweet = [person3,person1],结果就为true
4. 文件内容读取,易如反掌:
5. 生日快乐!
6. 按条件拆分List
7. 获取和解析XML Web服务
8. 找出List中最大最小值:
9. 使用GPars提供的直观、安全的方式控制Groovy的并行任务
10.找质数算法(Sieve of Eratosthenes筛法)
这个方法来自于Groovy Prime Numbers的评论。
11.有奖问答:FizzBuzz问题 - 打印1到100这些数字,遇到数字为3的倍数的时候,打印“Fizz”替代数字,5的倍数用“Buzz”代替,既是3的倍数又是5的倍数打印“FizzBuzz”。
另附两个有趣问题的解答:
现在手头有0.5美元、0.25美元、10美分、5美分、1美分,将1美元换成这些零钱,有多少种换法:
汉诺塔问题:
奇妙吧?就是这么简单!对于上述代码,如果你有更好的提议,也可以分享给大家。
1. List中的每个元素乘2:
(1..10)*.multiply(2)
2. List求和:
//元素均为为数字 (1..1000).sum() //元素含有字符 ['a',3,'z'].sum() //结果为字符串‘a3z’
3. List中是否含有某个字符串
def wordList = ['groovy', 'akka', 'grails framework', 'spock', 'typesafe'] def tweet = 'This is an example tweet talking about groovy and spock.' wordList.any { word -> tweet.contains(word) }
//该方法同样适用于对象 class Person{ String name } def person1=new Person(name:'person1') def person2=new Person(name:'person2') def person3=new Person(name:'person3') def wordList = [person1,person2] def tweet = [person3] wordList.any { it -> tweet.contains(it) }
上述代码结果为false,如果tweet = [person3,person1],结果就为true
4. 文件内容读取,易如反掌:
//读取所有内容 new File("data.txt").text //按行读取,返回List new File("data.txt").readLines()
5. 生日快乐!
(1..4).each { println 'Happy Birthday ' + ((it == 3) ? 'dear Arturo' : 'to You') }
6. 按条件拆分List
def (passed, failed) = [49, 58, 76, 82, 88, 90].split{ it > 60 }
7. 获取和解析XML Web服务
def results = new XmlSlurper().parse('http://search.twitter.com/search.atom?&q=groovy')
8. 找出List中最大最小值:
[14, 35, -7, 46, 98].min() [14, 35, -7, 46, 98].max()
9. 使用GPars提供的直观、安全的方式控制Groovy的并行任务
import groovyx.gpars.* GParsPool.withPool { def result = dataList.collectParallel { processItem(it) } }
10.找质数算法(Sieve of Eratosthenes筛法)
def t = 2..100 (2..Math.sqrt(t.last())).each { n -> t -= ((2*n)..(t.last())).step(n) } println t
这个方法来自于Groovy Prime Numbers的评论。
11.有奖问答:FizzBuzz问题 - 打印1到100这些数字,遇到数字为3的倍数的时候,打印“Fizz”替代数字,5的倍数用“Buzz”代替,既是3的倍数又是5的倍数打印“FizzBuzz”。
for (i in 1..100) { println "${i%3?'':'Fizz'}${i%5?'':'Buzz'}" ?: i }
另附两个有趣问题的解答:
现在手头有0.5美元、0.25美元、10美分、5美分、1美分,将1美元换成这些零钱,有多少种换法:
def count=0 101.times{ x1 -> 21.times{ x2 -> 11.times{ x3 -> 5.times{ x4 -> 3.times{ x5 -> if(x1*1+x2*5+x3*10+x4*25+x5*50 == 100){ count++ println "$x1*1+$x2*5+$x3*10+$x4*25+$x5*50 == 100" } } } } } } println count
汉诺塔问题:
def hanoita(n, a, b, c){ if(n==1){ println "$n : $a -> $c" }else{ hanoita n-1, a, c, b println "$n : $a -> $c" hanoita n-1, b, a, c } } hanoita 5, 'a', 'b', 'c'
奇妙吧?就是这么简单!对于上述代码,如果你有更好的提议,也可以分享给大家。
发表评论
-
阿里巴巴开源JSON解析组件FastJson简单使用笔记
2012-07-13 15:02 50858惯例,直接上代码,环境:groovy1.8.6+jdk1.6. ... -
Gson使用笔记
2012-07-13 14:56 1693直接看代码,环境为groovy1.8.6+jdk1.5.31, ... -
Groovy同步
2012-05-30 14:30 1798原贴点击这里 在 groovy 中同步 我的项目与 gro ... -
Grails编写WebService客户端
2012-05-28 13:39 2855环境:jdk1.6.0.31 + Grails2.0.4 1. ... -
groovy编写webservice服务端和客户端(含连接数据并输出JSON数据)
2012-05-25 16:45 3053个人总结,网上几乎没有此方面资料,有一篇帖子,按照其内容无法运 ... -
使用Groovy进行Socket编程之-字节数组版
2011-12-30 14:53 3525服务端代码: import java.net.Server ... -
Groovy连接2个数据库进行数据操作
2011-11-21 11:37 2091import groovy.sql.Sql clas ... -
(转)Groovy 1.8中的超炫JSON支持
2011-07-29 14:51 2303http://www.groovyq.net/content/ ... -
Groovy 浅入
2010-08-31 13:53 1992转贴地址:http://nottiansyf.iteye.co ... -
一个Grovvy开发者的总结!
2010-08-09 15:58 2696转自:http://blog.donews.com/WFoxd ... -
实战 Groovy: 构建和解析 XML
2010-08-09 15:39 1462原贴地址:http://www.ibm.com/develop ... -
如何使用groovyc 和 groovy
2010-08-09 15:32 3227开发人员可直接调用Groovy编译器来编译脚本文件,命令 ... -
Groovy脚本文件里边静态main方法
2010-08-09 15:30 1224class Test2 {//含有static void ... -
Groovy中文件追加和日期格式化
2010-08-09 15:28 1969new File("record.txt" ... -
Groovy配置文件的读写
2010-08-09 15:26 5077import org.asdtiang.util.DESC ... -
Groovy DES加解密
2010-08-09 15:25 2350import java.security.* import ... -
(转)HTTPBuilder:使用Groovy操作HTTP资源
2010-08-09 15:20 3748如今的Web,孤立的应用已经不再吃香,随之而来的是与其 ... -
使用Groovy进行Socket编程之-普通文本版
2010-08-03 12:27 2649服务端代码: import java.net.Serve ... -
(转)Groovy风格的JDBC编程
2010-06-09 16:08 1687原贴地址:http://www.groov ... -
Groovy grep的应用:对得出的数据列表集合进行过滤
2010-01-13 11:41 1972对得出的数据列表集合进行过滤: de ...
相关推荐
6. **Grails框架**:如果源代码中涉及到Grails,那么你将有机会了解这个基于Groovy的全栈Web开发框架,包括Controller、Service、Domain Class、GSP视图等组件的使用。 7. **AST转换**:Groovy编译器支持用户自定义...
如果你的 Groovy 脚本是一个完整的类结构,包括 `main` 方法,你可以使用 `GroovyShell` 来执行 `main` 方法并传递参数,就像下面的代码所示: ```java String[] args = new String[]{"Zhangsan", "10"}; Binding ...
文档还提供了一些基本的运行和编辑Groovy代码的方法,并且提到了Groovy的IDE和编辑器支持情况,以及一些Groovy的基础知识,如类和对象的声明、使用脚本、处理文本、数字、列表、映射和范围,以及如何在Java环境中...
然而,由于其高度可定制性和灵活性,它也存在安全风险,比如 Groovy 远程代码执行漏洞。 在本文中,我们将探讨 Elasticsearch 中的一个 Groovy 远程代码执行漏洞,该漏洞允许攻击者通过构造恶意请求来执行任意系统...
4. **编写 Groovy 代码**:在新建的 Groovy 类文件中,可以开始编写 Groovy 代码。例如: ```groovy class Greeting { def sayHello() { println "Hello, Groovy!" } } ``` 5. **运行 Groovy 类**:右键点击...
通过`groovy.lang.GroovyShell`或`groovy.lang.GroovyScriptEngine`,你可以方便地运行Groovy代码片段,而无需构建完整的Groovy项目。这种方式适用于快速原型开发、自动化测试或动态配置等场景,它减少了代码量,...
Groovy SDK 4.0.3 是一个针对Groovy编程语言的软件开发工具包,它包含了Groovy语言的运行环境和开发所需的各种组件。...通过安装和配置这个SDK,你可以开始探索Groovy的动态世界,体验它在各种应用场景中的强大功能。
Groovy结合了Java的面向对象特性和Python、Ruby的简洁语法,使得它成为Java开发者进行快速开发、自动化任务以及编写简洁代码的理想选择。这份"Groovy学习资料"包含了深入理解和实践Groovy所需的关键知识点,帮助...
2. **Groovy Compiler**: Groovy的编译器可以将Groovy源代码编译为Java字节码,这使得Groovy程序能够与Java代码无缝交互。 3. **Groovy Shell**: 提供了一个命令行接口,允许用户直接运行Groovy代码片段,用于快速...
Groovy是一种动态、灵活的编程语言,它是Java平台上的一个扩展,可以无缝集成到Java项目中。...通过阅读《Groovy经典入门》这本书和实践其中的示例,你可以快速掌握Groovy语言并开始利用其强大的功能。
Groovy结合了Java的静态类型系统和Python、Ruby等动态语言的灵活性,使得开发者可以更加高效地编写代码。本篇文章将深入探讨Groovy语言的关键特性和应用场景。 一、Groovy简介 Groovy是2003年由James Strachan创建...
4. **Groovy Ant任务**:Groovy SDK包含了一些Ant任务,允许你在Ant构建脚本中直接使用Groovy,比如运行Groovy脚本、编译Groovy源代码等。 5. **Groovy类库**:Groovy标准库提供了一系列的类和模块,涵盖了集合操作...
Groovy代码可以被Java编译器理解,并且在运行时,GroovyShell或GroovyClassLoader等工具能够即时编译和执行Groovy脚本,这为动态加载和执行提供了便利。 当我们需要在Java程序中调用Groovy脚本时,可以使用以下步骤...
Groovy是一种基于Java平台的动态编程语言,它与Java语法高度兼容,但提供了更简洁、更灵活的写法。在Groovy中,你可以感受到更强的表达性和更高的开发效率。...希望这个代码包能帮助你快速入门Groovy,开启编程之旅。
解释器允许你运行Groovy脚本,而编译器则可以将Groovy代码转换成Java字节码,使得Groovy程序能在Java虚拟机(JVM)上运行。这对于Java开发者来说是个巨大的优势,因为他们可以无缝地将Groovy集成到现有的Java项目中...
3.兼容 Java:Groovy 可以与 Java 语言混合使用,Groovy 代码可以调用 Java 代码,反之亦然。 开发环境 1. JDK 1.5 以上 2. Eclipse + Groovy 插件(支持 Groovy 1.5.7) 创建 Groovy 项目 1. 新建一个 Java ...
重启后,你可以在Eclipse中创建新的Groovy项目,编辑Groovy源代码,并利用内置的Groovy编译器进行构建和调试。 Groovy Eclipse插件的特性包括: - **语法高亮**:提供Groovy语言的语法着色,使代码更易读。 - **...
在学习和使用Groovy时,理解这些核心概念和特性至关重要,它们将帮助你有效地编写、理解和调试Groovy代码。此外,配合Junit或其他测试框架,Groovy可以构建强大的测试套件,提高软件质量。对于开发者来说,掌握...
本文适合于不熟悉 Groovy,但想快速轻松地了解其基础知识的 Java开发人员。了解 Groovy 对 Java 语法的简化变形,学习 Groovy 的...最重要的是,您将学会如何在日常 Java 应用程序开发中联合使用 Groovy 和 Java 代码
Groovy提供了GroovyShell、GroovyScriptEngine和GroovyClassLoader等工具,允许我们执行Groovy脚本或字符串中的代码。 GroovyShell是Groovy提供的一种简单方式来执行Groovy脚本。通过创建一个GroovyShell实例,我们...