繁体   English   中英

ArrayList 替换元素是否存在于给定索引处?

[英]ArrayList replace element if exists at a given index?

如果在给定索引处的 ArrayList 中存在元素,如何替换元素?

  arrayList.set(index i,String replaceElement);

如果您需要不同的设置功能,我建议您使用自己的类扩展 ArrayList。 这样,您不必在多个地方定义您的行为。

// You can come up with a more appropriate name
public class SizeGenerousArrayList<E> extends java.util.ArrayList<E> {

    @Override
    public E set(int index, E element) {
        this.ensureCapacity(index+1); // make sure we have room to set at index
        return super.set(index,element); // now go as normal
    }

    // all other methods aren't defined, so they use ArrayList's version by default

}

如果元素已存在于索引处,则该元素将被覆盖,这是默认行为: Javadoc

还是我完全错过了你的观点?

只需在 arraylist 中使用此方法

list.set(/*index*/,/*value*/)

只需在remove()语句后添加一个中断

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM