相关疑难解决方法(0)

何时在Java中使用LinkedList而不是ArrayList?

我一直只是一个人使用:

List<String> names = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)

我使用接口作为可移植性的类型名称,因此当我问这些问题时,我可以重新编写代码.

何时应该LinkedList使用,ArrayList反之亦然?

java collections linked-list arraylist

2974
推荐指数
27
解决办法
102万
查看次数

for循环和for循环之间是否存在性能差异?

如果有的话,以下两个循环之间的性能差异是什么?

for (Object o: objectArrayList) {
    o.DoSomething();
}
Run Code Online (Sandbox Code Playgroud)

for (int i=0; i<objectArrayList.size(); i++) {
    objectArrayList.get(i).DoSomething();
}
Run Code Online (Sandbox Code Playgroud)

java performance for-loop

176
推荐指数
6
解决办法
10万
查看次数

Java中传统for循环与Iterator/foreach的性能

在遍历ArrayList,HashMap和其他集合时,是否有任何性能测试结果可用于比较传统的for循环与Iterator?

或者我为什么要使用Iterator for循环,反之亦然?

java iterator for-loop arraylist map

60
推荐指数
3
解决办法
5万
查看次数

性能:通过Java中的List进行迭代

在Java中迭代遍历列表是否更慢:

for (int i=0;i<list.size();i++) {
    .. list.get(i)
}
Run Code Online (Sandbox Code Playgroud)

而不是:

for (Object o: list) {
    ... o
}
Run Code Online (Sandbox Code Playgroud)

java

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

Java foreach效率

我有这样的事情:

Map<String, String> myMap = ...;

for(String key : myMap.keySet()) {
   System.out.println(key);
   System.out.println(myMap.get(key)); 
}
Run Code Online (Sandbox Code Playgroud)

所以myMap.keySet()foreach循环中调用一次?我想是的,但想要你的意见.

我想知道如果以这种方式使用foreach(myMap.keySet())会对性能产生影响,或者它等同于:

Set<String> keySet = myMap.keySet();
for (String key : keySet) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

java performance foreach loops premature-optimization

22
推荐指数
5
解决办法
1万
查看次数

Iterator Class和foreach构造之间的性能差异

我运行了以下代码,但运行时有时会出现某种并发异常.

ArrayList<Mob> carriers = new ArrayList<Mob>();
ArrayList<Mob> mobs = new ArrayList<Mob>();
...
for (Mob carrier : carriers){
    for (Mob mob : mobs){
        checkInfections (carrier, mob);
    } 
}
Run Code Online (Sandbox Code Playgroud)

我重构它来解决并发问题,但它确实引出了一个问题.如果我将for构造更改为Iterator模式,性能会有差异吗?foreach构造和Iterator类之间的访问级别差异是什么?

java design-patterns concurrentmodification

4
推荐指数
1
解决办法
3588
查看次数