易截截图软件、单文件、免安装、纯绿色、仅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


相关文档:

JNA实现Java调用Fortran

在成功实现Java调用C++之后,接下来想到能否通过JNA实现Java调用Fortran,今天试验了一下,还是比较容易的。
网上有一个Java调用F95的例子,但是我考虑不仅要实现F95的调用,还要实现F77的调用,所以费了一些周折。
问题的关键在于F77为过程名自动添加了一个尾部的下划线,所以sub1这个过程,到Java一端,就变成了sub1_, ......

java 通过System.getProperties()获取系统参数

java 通过System.getProperties()获取系统参数
Properties props=System.getProperties(); //系统属性
   System.out.println("Java的运行环境版本:"+props.getProperty("java.version"));
   System.out.println("Java的运行环境供应商:"+props.getProperty("java.vendor"));
   ......

JAVA常用技术网站


http://www.javaalmanac.com
- Java开发者年鉴一书的在线版本. 要想快速查到某种Java技巧的用法及示例代码, 这是一个不错的去处.
http://www.onjava.com
- O'Reilly的Java网站. 每周都有新文章.
http://java.sun.com
- 官方的Java开发者网站 - 每周都有新文章发表.
http://www.developer.com/java
-
由Ga ......

java发送Email

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

Java SE学习_String[] split(String regex)_注意事项


String[] split(String regex)
    根据给定的正则表达式的匹配来拆分此字符串,java中使用regex的符号需要使用"\\",因为regex本身使用"\"作为转义符。而在java中一个"\",需要用"\\"表示。
    如果用"."做分割的话必须要这样"\\."如果是|也是"\\|"。
列举几个实用"\\"的例子:
Stri ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号