Kot*_*sos -1 java for-loop contains arraylist
众所周知,如果我想查找对象是否在arraylist中,我可以使用contains()方法:
if(arraylist.contains(obj)) { // do things }
Run Code Online (Sandbox Code Playgroud)
或者我可以使用for循环(假设我已经重载了equals()方法):
for(Object o : arraylist) {
if(obj.equals(o)) {
// do things
}
}
Run Code Online (Sandbox Code Playgroud)
正如在其他帖子中提到的那样,contains()实际上在for循环和equals()方法的内部使用.因此,我的问题是:当arraylist更大时,期望contains()花费更多时间是合乎逻辑的吗?
我问这个是因为在我的代码中我使用contains()以避免"for循环"并因此保持运行时间低且恒定,但我注意到随着arraylist大小变大,代码运行速度明显变慢.
归档时间: |
|
查看次数: |
4708 次 |
最近记录: |