import org.junit.Test
// 范围是表达特定序列值的一种简略方法。它通过序列中第一个值和最后一个值表示,范围还具有包含和不包含关系。
// 一个具有包含关系的范围,将包含第一个值开始到最后一个值为止的所有值;
// 而一个具有不包含关系的范围,则包含除了最后一个值之外的所有值。
// 包含边界的范围通过".."表示,而不包含边界的范围则在下边界和上边界之间使用"..<"
// 范围可以通过字符串或整型值表示,也可以通过升序或降序表示.
class Range630 extends GroovyTestCase {
/**
* 1900..1999 //20世纪(包含边界)
* 2000..<2100 //21世纪(不包含边界)
* "A".."D" //A,B,C和D
* 10..1 //10,9,...,1
* 'Z'..'X' //Z,Y和X
*/
@Test
void testExample() {
def start = -10
def end = 19
def range = start..end + 1
println range.contains(1) //true, 判断当前范围是否包含指定的元素,如果包含返回true
println range.get(1) //-9, 返回当前范围中指定位置的元素值
println range.getFrom() //-10, 返回当前范围中最小的元素值
println range.getTo() //20, 返回当前范围中最小的元素值
println range.isReverse() //false, 判断当前范围是否逆序,如果是返回true
println range.size() //31, 返回当前范围中的元素个数
println range.subList(1, 5) //[-9, -8, -7, -6], 返回当前范围中给定的formIndex(包含)和toIndex(不包含)之间的值
}
}
groovy Range
最新推荐文章于 2022-06-22 20:12:38 发布