【问题标题】:What does ' : ' do in a java loop? [duplicate]' : ' 在 java 循环中有什么作用? [复制]
【发布时间】:2021-08-18 20:28:00
【问题描述】:
public int wordsCount(String[] words, int len) {
    int counter = 0;
    for (String s : words) {
    if (s.length()==len) {
    counter++;
    } 
    
  }
  return counter;
  
}

在这里我试图找到字符串的数量和给定输入的长度

【问题讨论】:

    标签: java loops


    【解决方案1】:

    除了允许您的代码编译之外,冒号什么也不做!

    : 只是 enhanced for statement 语法的一部分,也不太正式地称为 "for each loop"

    正如上面“for each loop”链接中所说:

    void cancelAll(Collection<TimerTask> c) {
        for (TimerTask t : c)
            t.cancel();
    }
    

    当您看到冒号 (:) 时,将其读作“in”。上面的循环读作“对于 c 中的每个 TimerTask t”。

    因此,对您的代码应用相同的解释,将其读作“for each String s in words”。

    【讨论】:

      【解决方案2】:

      您使用的循环是函数wordsCount 中的for each loop

      for each loop 所做的是,根据数组的底层数据类型遍历整个数组。因此,您不必创建循环计数器来遍历,而是在您的情况下,String s 将是用于遍历 String 数组,其中s 是您在数组中的当前元素。

      语法:for ([Data type][variable] : [source array/iterable])

      【讨论】:

        猜你喜欢
        • 2021-06-04
        • 1970-01-01
        • 2016-11-12
        • 1970-01-01
        • 2015-07-19
        • 2017-12-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多