err*_*err 3 java performance for-loop arraylist
问题是,"我们可能期望method3比method2运行得更快,为什么会这样?" 但我不知道.似乎两种方法都执行相同数量的操作.有人可以赐教吗?
ArrayList<Person> method2(Person x, ArrayList<Person> people){
ArrayList<Person> friends = new ArrayList<Person>();
for (Person y : people) if (x.knows(y)) friends.add(y);
return friends;
}
ArrayList<Person> method3(Person x, ArrayList<Person> people){
ArrayList<Person> friends = new ArrayList<Person>();
for (int=0; i<people.size(); i++){
Person y = people.get(i);
if (x.knows(y)) friends.add(y);
}
return friends;
}
Run Code Online (Sandbox Code Playgroud)
不是这样.两种方法都将以几乎相同的速度运行.
如果它们不会以完全相同的速度运行,则有两件事情:
在任何实际情况下,它都不会产生任何影响.
你真的不能告诉它是否将是method2
或method3
将运行得更快.
归档时间: |
|
查看次数: |
83 次 |
最近记录: |