【Groovy】循环控制 ( Java 语法循环 | 默认的 IntRange 构造函数 | 可设置翻转属性的 IntRange 构造函数 | 可设置是否包含 to 的构造函数 | 0..9 简写 )(一)

简介: 【Groovy】循环控制 ( Java 语法循环 | 默认的 IntRange 构造函数 | 可设置翻转属性的 IntRange 构造函数 | 可设置是否包含 to 的构造函数 | 0..9 简写 )(一)

文章目录

一、使用 Java 语法循环

二、使用 IntRange 循环

1、使用默认的 IntRange 构造函数

2、使用可设置翻转属性的 IntRange 构造函数

3、使用可设置是否包含 to 的 IntRange 构造函数

三、使用 0..9 简化方式的 IntRange 实例对象

四、完整代码示例





一、使用 Java 语法循环


在 Groovy 中 , 使用 Java 语法进行循环 :


   

// Java 语法样式的循环
        println ""
        print "( 1 ) : "
        for (int j = 0; j <= 9; j++) {
            print j + " "
        }


打印结果 :


( 1 ) : 0 1 2 3 4 5 6 7 8 9






二、使用 IntRange 循环



1、使用默认的 IntRange 构造函数


使用默认的 IntRange 实例对象控制循环 ;


构造函数 :



/**
  * 创建一个新的非包容性<code>IntRange</code>。如果 from <code>大于
  * <code>to</code>,将创建一个反向范围,并将<code>from</code>和<code>to</code> 进行交换。
  * 
  * @param from 范围中的第一个数字开始。
  * @param to 范围内的最后一个数字。
  * 如果范围包含的值超过{@link Integer#MAX_VALUE},则@throws会引发IllegalArgumentException。
  */
    public IntRange(int from, int to)



循环示例代码 :


// Groovy 循环 , 0 ~ 9 进行循环
println ""
print "( 1 ) : "
for (i in new IntRange(0, 9)) {
    print i + " "
}


执行结果 :


( 1 ) : 0 1 2 3 4 5 6 7 8 9



2、使用可设置翻转属性的 IntRange 构造函数


构造函数 :



 

/**
     * Creates a new non-inclusive aware <code>IntRange</code>.
     *
     * @param from    the first value in the range.
     * @param to      the last value in the range.
     * @param reverse <code>true</code> if the range should count from
     *                <code>to</code> to <code>from</code>.
     * @throws IllegalArgumentException if <code>from</code> is greater than <code>to</code>.
     */
    protected IntRange(int from, int to, boolean reverse)


代码示例 :


 

// Groovy 循环 , 0 ~ 9 进行循环
        println ""
        print "( 2 ) : "
        for (i in new IntRange(0, 9, false)) {
            print i + " "
        }
        // Groovy 循环 , 9 ~ 0 进行循环
        println ""
        print "( 3 ) : "
        for (i in new IntRange(0, 9, true)) {
            print i + " "
        }


执行结果 :


( 2 ) : 0 1 2 3 4 5 6 7 8 9 
( 3 ) : 9 8 7 6 5 4 3 2 1 0



3、使用可设置是否包含 to 的 IntRange 构造函数


构造函数 :


 

/**
     * Creates a new inclusive aware <code>IntRange</code>.
     *
     * @param from    the first value in the range.
     * @param to      the last value in the range.
     * @param inclusive <code>true</code> if the to value is included in the range.
     */
    public IntRange(boolean inclusive, int from, int to)


代码示例 :


   

// Groovy 循环 , 0 ~ 9 进行循环 , 不包含最后一个 to 元素 , 即 9
        // 只能打印出 0 ~ 8 的数字
        println ""
        print "( 4 ) : "
        for (i in new IntRange(false, 0, 9)) {
            print i + " "
        }
        // Groovy 循环 , 0 ~ 9 进行循环 , 包含最后一个 to 元素 , 即 9
        // 只能打印出 0 ~ 9 的数字
        println ""
        print "( 5 ) : "
        for (i in new IntRange(true, 0, 9)) {
            print i + " "
        }


执行结果 :


( 4 ) : 0 1 2 3 4 5 6 7 8 
( 5 ) : 0 1 2 3 4 5 6 7 8 9






三、使用 0…9 简化方式的 IntRange 实例对象


0…9 的描述 , 相当于 new IntRange(0, 9) , 二者是等价的 ;



代码示例 :


     

// Groovy 循环 , 0 ~ 9 进行循环
        println ""
        print "( 6 ) : "
        for (i in 0..9) {
            print i + " "
        }
        // 其中 0..9 相当于 new IntRange(0, 9)
        def range = 0..9
        println ""
        print "0..9 type : "
        println range.class


执行结果 :


( 6 ) : 0 1 2 3 4 5 6 7 8 9 
0..9 type : class groovy.lang.IntRange


目录
相关文章
|
6天前
|
Java 程序员 API
Java循环操作哪个快?
本文探讨了Java中Stream API与传统for循环的性能对比及适用场景。作者通过实际案例分析,指出在某些情况下,过度使用Stream API会导致代码可读性和维护性下降。测试结果显示,在数据量较小的情况下,普通for循环的性能优于Stream API,尤其是在涉及多次类似操作时。因此,建议在开发中根据具体需求选择合适的遍历方式,以提高代码的可读性和性能。
Java循环操作哪个快?
|
1月前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
67 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
22天前
|
算法 Java 测试技术
🧑‍💻Java零基础:Java 的循环退出语句 break
【10月更文挑战第16天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
36 6
|
29天前
|
Java Linux iOS开发
如何设置 Java 的环境变量
设置Java环境变量是使用Java开发工具和运行Java程序的前提。主要步骤包括:安装JDK,配置系统环境变量中的JAVA_HOME、PATH和CLASSPATH,确保命令行可直接调用javac和java命令。
|
30天前
|
安全 Java Linux
java程序设置开机自启
java程序设置开机自启
|
1月前
|
Java 测试技术 数据安全/隐私保护
📖Java零基础-while循环语句的深度解析
【10月更文挑战第6天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
28 1
|
1月前
|
传感器 Java 测试技术
📖Java零基础-do-while循环语句的深入剖析
【10月更文挑战第5天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
12 1
|
2月前
|
Java
Java循环
Java循环
42 6
|
Java 程序员
黑马程序员Java零基础视频教程笔记-判断和循环 1
黑马程序员Java零基础视频教程笔记-判断和循环
52 0
|
算法 Java 程序员
黑马程序员Java零基础视频教程笔记-判断和循环 2
黑马程序员Java零基础视频教程笔记-判断和循环
48 0