易截截图软件、单文件、免安装、纯绿色、仅160KB

Groovy java的好伙伴5

通过 Groovy 进行循环
同大多数脚本语言一样,Groovy 经常被宣传为生产力更高 的 Java 语言替代品。您已经看到了 Groovy 缺少类型能够如何减少打字工作。在这一节,将创建并试用一个 repeat 函数。在这个过程中,将进一步探索 Groovy 提高效率的方式。
更好、更短的循环
下面这种方法可以更好地感受 Groovy 缺乏类型的好处:首先,用与创建 HelloWorld 相同的方式创建一个 Groovy 类,将这个类称为 MethodMadness,并删除自动生成的类体:将要定义一个独立的 repeat 函数。现在在控制台中输入以下代码:
def repeat(val){
for(i = 0; i < 5; i++){
println val
}
}
起初,从 Java 的角度来看,这个小函数看起来可能有些怪(实际上,它很像 JavaScript)。但它就是 Java 代码,只不过是用 Groovy 的样式编写的。
深入方法
repeat 函数接受一个变量 val。请注意参数不需要 def。方法体本质上就是一个 for 循环。
调用这个函数。
repeat("hello world")
会输出 “hello world” 五次。请注意,for 循环中省略了 int。
没有变量类型的 for 循环要比标准的 Java 代码短些。现在看看如果在代码里加入范围会出现什么情况。
Groovy 中的范围
范围 是一系列的值。例如 “0..4” 表明包含 整数 0、1、2、3、4。Groovy 还支持排除范围,“0..<4” 表示 0、1、2、3。还可以创建字符范围:“a..e” 相当于 a、b、c、d、e。“a..<e” 包括小于 e 的所有值。
循环范围
范围为循环带来了很大的方便。例如,前面从 0 递增到 4 的 for 循环如下所示:
for(i = 0; i < 5; i++)
范围可以将这个 for 循环变得更简洁,更易阅读:
def repeat(val){
for(i in 0..5){
println val
}
}
设置范围
如果运行这个示例,可能会注意到一个小问题:“Hello World” 输出了六次而不是五次。这个问题有三种解决方法:
将包含的范围限制到 4:
for(i in 0..4)
从 1 而不是 0 开始: def repeat(val){
for(i in 1..5){
println val
}
}
将范围由包含改为排除:
def repeat(val){
for(i in 0..<5){
println val
}
}
不论采用哪种方法,都会得到原来的效果 — 输出 “Hello World” 五次。
默认参数值
现在已经成功地使用 Groovy 的范围表达式缩短了 repeat 函数。但这个函数依然有些限制。如果想重复 “Hello World&rd


相关文档:

Java中集合容器类List和Set的用法

List的用法
List包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接口还提供了一些适合于自身的常用方法,如表1所示。
表1  List接口定义的常用方法及功能
从表1可以看出,List接口提供的适合于自身的 ......

Java String提高比较效率

java对两个String进行比较,提高代码运行效率方法如下:
在编程过程中,有时候我们需要循环比较字符串,通常使用的方法是equals如下:
public class TestEquals extends Thread {
    public static void main(String args[]) {
        String[] checkStr = {"&quo ......

java发送Email

/**
 发送邮件的方法
 @param mailStr  -  发送的邮件体
**/
 public void sendMail(String mailStr){
       try {
           Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
& ......

用Java生成UUID


GUID是一个128位长的数字,一般用16
进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以
保证(概率意义上)3240年不重复。
UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID
package
com.mytest;
im ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号