小编shr*_*pah的帖子

如何在修改列表时从列表中删除

我正在尝试创建一个霍夫曼树,并且正在尝试合并两棵树.我无法弄清楚如何在没有得到"并发修改异常"的情况下删除程序中的树,因为我正在迭代列表并尝试同时从列表中删除.

BinaryTree<Character, Integer> t1 = null;
        BinaryTree<Character, Integer> t2 = null;
        BinaryTree<Character, Integer> tFinal = null;
        int treeSize = TREES.size();

        for (int i = 0; i < treeSize; i++) {

            for (BinaryTree<Character, Integer> t : TREES) {
                System.out.println("treeSize " + treeSize);
                System.out.println(t.getRoot().getElement()
                        + "  t.getRoot().getElement()");

                // here I edited the merge function in Binary Tree to set
                // the new root
                // to have null value for value, and itemTwo for weight
                System.out.println(t.getRoot().getValue() + " weight of tree \n");
                t1 …
Run Code Online (Sandbox Code Playgroud)

java

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

尝试使用列表迭代器删除对象

我正在尝试使用列表迭代器从列表中删除对象.我已经浏览了网站上的其他解决方案,并没有减轻错误"线程中的异常"主"java.util.ConcurrentModificationException"

这是我的代码没有执行:

void PatronReturn(String bookName) {
//       get to beginning
    while(listIterator.hasPrevious()) {
        listIterator.previous();
    }
    while(listIterator.hasNext()){
        Book b = listIterator.next();
    if (listIterator.next().getBookTitle().equals(bookName)) { 
        //listIterator.next();
        //listIterator.remove();
        books.remove(b);
        //listIterator.next(); //moves to next so iterator can remove previous ?
        //books.remove(listIterator.next());; // TODO see if this is correct

    }
    }
Run Code Online (Sandbox Code Playgroud)

java listiterator

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

标签 统计

java ×2

listiterator ×1