public static ArrayList mainList = someList;
Run Code Online (Sandbox Code Playgroud)
如何从中获取特定项目ArrayList?mainList[3]?
我有一个我想迭代的ArrayList.迭代它时,我必须同时删除元素.显然这会抛出一个java.util.ConcurrentModificationException.
处理此问题的最佳做法是什么?我应该先克隆列表吗?
我删除不在循环本身但是代码的另一部分的元素.
我的代码看起来像这样:
public class Test() {
private ArrayList<A> abc = new ArrayList<A>();
public void doStuff() {
for (A a : abc)
a.doSomething();
}
public void removeA(A a) {
abc.remove(a);
}
}
Run Code Online (Sandbox Code Playgroud)
a.doSomething可能打电话Test.removeA();
如何在相同大小(= 10)的多个ArrayLists中拆分ArrayList(size = 1000)?
ArrayList<Integer> results;
Run Code Online (Sandbox Code Playgroud) 我试着用这样的循环
// ArrayList tourists
for (Tourist t : tourists) {
if (t != null) {
t.setId(idForm);
}
}
Run Code Online (Sandbox Code Playgroud)
但这并不好.谁能建议我一个更好的解决方案?
一些有用的基准可以做出更好的决策:
所以,通常ArrayList.toArray()会返回一种类型Object[]....但是假设它是一个
Arraylist对象Custom,我该怎么做toArray()才能返回一种Custom[]而不是Object[]?
如何检查在ArrayList中是否存在扫描仪中写入的值?
List<CurrentAccount> lista = new ArrayList<CurrentAccount>();
CurrentAccount conta1 = new CurrentAccount("Alberto Carlos", 1052);
CurrentAccount conta2 = new CurrentAccount("Pedro Fonseca", 30);
CurrentAccount conta3 = new CurrentAccount("Ricardo Vitor", 1534);
CurrentAccount conta4 = new CurrentAccount("João Lopes", 3135);
lista.add(conta1);
lista.add(conta2);
lista.add(conta3);
lista.add(conta4);
Collections.sort(lista);
System.out.printf("Bank Accounts:" + "%n");
Iterator<CurrentAccount> itr = lista.iterator();
while (itr.hasNext()) {
CurrentAccount element = itr.next();
System.out.printf(element + " " + "%n");
}
System.out.println();
Run Code Online (Sandbox Code Playgroud) 我使用了很多列表和数组,但我还没有遇到过这样一个场景,即如果不比链表更容易使用数组列表那么容易.我希望有人能给我一些关于链表明显更好的例子.
我有一个ArrayListJava的Collection类,如下所示:
ArrayList<String> animals = new ArrayList<String>();
animals.add("bat");
animals.add("owl");
animals.add("bat");
animals.add("bat");
Run Code Online (Sandbox Code Playgroud)
如您所见,它animals ArrayList由3个bat元素和一个owl元素组成.我想知道Collection框架中是否有任何API返回bat出现次数或是否有另一种方法来确定出现次数.
我发现Google的Collection Multiset确实有一个API,可以返回元素的总出现次数.但这只与JDK 1.5兼容.我们的产品目前是JDK 1.6,所以我不能使用它.
我想创建一个如下所示的arraylist数组:
ArrayList<Individual>[] group = new ArrayList<Individual>()[4]
Run Code Online (Sandbox Code Playgroud)
但它没有编译.我怎样才能做到这一点?
我需要在ArrayList队列中添加元素,但是当我调用函数添加元素时,我希望它在数组的开头添加元素(因此它具有最低的索引)并且如果数组有10个元素添加删除最旧元素(索引最高的元素)的新结果.
有没有人有什么建议?
arraylist ×10
java ×9
arrays ×4
collections ×1
contains ×1
for-loop ×1
foreach ×1
linked-list ×1
list ×1
loops ×1
object ×1
performance ×1
stack ×1
types ×1