当前位置: 首页 > 知识库问答 >
问题:

不使用迭代器值编写for循环的惯用方法是什么?

闻人树
2023-03-14

假设我想要一个使用范围的有限循环:

let mut x: i32 = 0;
for i in 1..10 {
    x += 1;
}

编译器将发出警告:

warning: unused variable: `i`, #[warn(unused_variables)] on by default
for i in 1..10 {
    ^

有没有更惯用的方法来写这个,不会让编译器抱怨?

共有1个答案

史骏祥
2023-03-14

您可以将作为您的模式写入,意思是“放弃值”:

let mut x: i32 = 0;
for _ in 1..10 {
    x += 1;
}
 类似资料:
  • 问题内容: 在Java中添加了增强的for循环(foreach循环)后,它可以与数组或的目标一起使用。 这对于仅实现一种迭代类型并因此具有单个方法的Collection类非常有用。 但是我发现自己非常想让我使用Collection类中的非标准迭代器感到沮丧。例如,我最近试图帮助某人使用a 作为LIFO /堆栈,然后以FIFO顺序打印元素。我被迫这样做: 我失去了for-each循环的优势。这不仅与

  • 我有这个代码,它是用for循环实现的。我想用一个字母来写。流和。map()函数。我试着用这个。map()函数。但不幸的是,我得到了以下错误: 不兼容的类型。必填列表 这里是旧代码: 这是我使用。地图() 有没有关于我如何解决这个问题的建议?或者我应该注意什么?

  • 问题内容: 谁能告诉我Java +5中Enhanced for loop和Iterators的优点是什么? 问题答案: Stephen Colebourne(Joda- Time,JSR-310等)对优点和缺点进行了很好的总结,针对每个循环迭代控制建议进行了增强,以在Java 7中进行扩展: 功能概要: 扩展Java 5 for-each循环,以允许访问循环索引(无论是第一次还是最后一次迭代),并

  • 问题内容: 我的代码产生了意外的结果。看来我的for循环跳过了第一次迭代,我不明白为什么。 返回…(假设输入的数字是姓名) 为什么第一个get.nextLine()被跳过? 问题答案: 当前,您对Scanner#nextInt的调用不占用换行符,因此将其传递给您的第一次调用,因此 不会 阻塞。 您将需要添加 通话后,您的第一个通话将阻止。

  • 我一直在读一本面向初学者的书,“第一头HTML5编程”,其中有这样一段代码: 目前,如果我调用,它将返回下一次显示是在下午5:00。我将循环条件更改为“I<=movie.showtimes.length;”但它仍然只运行一次,并且只显示下午5点。循环只迭代一次,即使我重写了这个函数: 不是应该跑两次吗?

  • 问题内容: 此代码将导致无限循环的机会是什么? 实际上,这会导致无限循环。我的怀疑是因为我没有服用,是真的吗? 问题答案: 是。除非您不打电话,否则它将永远不会继续进行下一项。Beause 将返回您已在列表/集中添加的对象。