Groovy中的范围运算符不能打印整个数字范围

时间:2019-02-28 22:42:16

标签: groovy

对于groovy来说是新手,并且在Tutorialspoint上关注以下教程,并陷入范围运算符here

在范围运算符下,提供的符号为.card { display: block; padding: 2px 4px 2px 4px; box-sizing: inherit; max-width: 90%; min-height: 150px; border-radius: 4; border: #000 3px solid; margin: 4px 4px 10px 4px; font-family: Arial, Helvettica, sans-serif; font-size: 14px; overflow-wrap: auto; } .card > p { box-sizing: inherit; max-width: 100%; overflow: wrap; }

代码用来演示示例的代码被剪掉

<div class="container">
  <div id="list-1" class="list">
    <h2>List 1</h2>
    <div class="card">
      This is card 1. Giving it some long content without using another p element to demonstrate
      that the problem exists in the div as well as the paragraph beneath.
    </div>
    <div class="card">
      <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
    </div>
    <div class="card">
      This is card 3
    </div>
    <div class="card">
      This is card 4
    </div>
  </div>
</div>

输出应为

def range = 0..5

执行同样的操作,我得到

class Example {
  static void main(String[] args) {
    def range = 5..10;
    println(range);
    println(range.get(2));
  }
}

我尝试了该示例并删除了分号,但得到的结果相同。您能解释一下我在做什么错,谢谢。

2 个答案:

答案 0 :(得分:2)

您正在做的是打印用IntRange创建的5..10对象。您会看到IntRange的toString()将完全打印您得到的内容。

要打印范围内的每个项目,您需要使用循环。

range.each {
    println it
}

但是,由于每个数字都在其单独的行上,因此不会为您提供确切的输出。

答案 1 :(得分:1)

您希望在第一次打印中有一个列表

如果需要的话,可以做

println range.toList()