我想要一个数组列表,并限制元素删除。我该怎么做?
使用google guava库中的ImmutableList类。
顺便说一句:这是一个副本:使ArrayList只读
创建ArrayList的子类并重写remove方法。
如果要禁止所有修改,请使用集合。不可修改列表。
在List
接口上创建一个不允许删除的包装器,只需所需的方法:
class MyArrayList<T> {
private List<T> list;
public MyArrayList() {
list = new ArrayList<T>();
}
public boolean add(T t) {
return list.add(t);
}
//add other desired methods as well
}
另一个不推荐的选项是从ArrayList扩展,并重写remove方法,使其不做任何事情,但这是不可取的,因为除非确实需要,否则不应从这些类扩展:
public MyArrayList<T> extends ArrayList<T> {
@Override
public boolean remove() {
//do nothing...
}
}
此外,您可以使用集合#unmodifiableList包装当前的列表,以避免删除元素(这是一个类似于上面提到的包装类,除了实现列表之外),但请注意,您也不能添加元素。
但是我们不能在集合中存储HashMap。我想要HashMap与键,值对作为返回值,这将被添加到列表中。也就是说,最终的值应该采用ArrayList>格式。 你能在这方面帮助我吗?谢了。
问题内容: 我有一个,并且我想从中删除重复的字符串。我怎样才能做到这一点? 问题答案: 如果你不想在中添加重复项,则应考虑为什么要使用允许重复项的。删除重复元素的最简单方法是将内容添加到中(不允许重复),然后将其添加回中: 当然,这破坏了中元素的顺序。
我有一个程序,它从文件中获取输入,将文件中的每个单词保存为令牌,然后将每个令牌添加到数组列表中。 问题是arrayList出现了例如[“cat”,“dog”,“”,“”,“bird”],我不想在arrayList中出现空格。 总之,我的代码如下: 应该会删除空格,我已经通过从非文件数组列表中删除空格进行了测试。奇怪的是,如果我将其更改为,它将从ArrayList中删除cat。
问题内容: 如何从ArrayList中删除重复的元素? 问题答案: 如果你不想在中添加重复项,则应考虑为什么要使用允许重复项的。删除重复元素的最简单方法是将内容添加到中(不允许重复),然后将其添加Set回中ArrayList: 当然,这会破坏中的元素顺序。
这段代码运行良好,但我想知道它的性能,我指的是它的总体时间复杂度?
问题内容: 我有一个包含一些对象的对象,例如,每个对象都有一个and 属性。如何从其中仅删除具有特定“名称” 的对象? 问题答案: 您可以使用如下形式: