相关疑难解决方法(0)

Java是如何由编译器生成的循环代码

Java是如何由编译器生成的循环代码?

例如,如果我有:

for(String s : getStringArray() )
{
   //do something with s
}
Run Code Online (Sandbox Code Playgroud)

where getStringArray()函数返回我想要循环的数组,函数会一直调用还是只调用一次?一般来说,使用这个结构循环的代码有多优?

java foreach

18
推荐指数
2
解决办法
2万
查看次数

为什么我不能在java for-each循环中使用现有变量?

我猜它不起作用,因为在语法中第一个参数必须具有声明的类型.但是,如果我在一个带有参数的函数中使用for-each循环,就像我在这个例子中那样呢?变量p有一个声明的类型,我只想重用它.

public void addItem(Product p) {
  // ensure that we don't add any nulls to the item list
  if (p != null ) {
    int i = 0;

    for (p : items.keySet()) {
      i++;
    }

    items.put( p , i);
  }
}
Run Code Online (Sandbox Code Playgroud)

有一个相关的问题,Java for循环语法:"for(T obj:objects)".那个询问for-each语法意味着什么.我知道这意味着什么,我只想重用一个现有的变量,而不是必须声明一个新变量.

java foreach for-loop

2
推荐指数
1
解决办法
2653
查看次数

标签 统计

foreach ×2

java ×2

for-loop ×1