我有一个ArrayList:
ArrayList<OrderItem> orderItems = new ArrayList<OrderItem>();
它充满了物体。 我想按一个有效删除此列表中所有对象的按钮。我怎么能这样做?
答案 0 :(得分:4)
orderItems.clear();
并且
需要关注的主要问题是其他代码可能会引用该列表。
更喜欢阅读@Skeets回答:Better practice to re-instantiate a List or invoke clear()
答案 1 :(得分:3)
像orderItems.clear()
这样使用clear() method
它删除此列表中的所有元素。此调用返回后列表将为空。
答案 2 :(得分:3)
您可以使用ArrayList#clear()。
从此列表中删除所有元素。此调用返回后列表将为空。
使用clear()
,您无需创建新的ArrayList
对象。它只是清空ArrayList
。
orderItems.clear();
orderItems.trimToSize();
答案 3 :(得分:1)
Collection接口本身定义了void clear();
方法。
/**
* Removes all of the elements from this collection (optional operation).
* The collection will be empty after this method returns.
*
* @throws UnsupportedOperationException if the <tt>clear</tt> operation
* is not supported by this collection
*/
在按钮中,actionListner只使用orderItems.clear();
。这将删除该Collection的所有元素(在您的情况下为ArrayList)。
myButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
orderItems.clear();
}
});
答案 4 :(得分:0)
在您设置
的按钮中添加ActionListener
orderItems = new ArrayList();
这将删除列表中的每个项目。
答案 5 :(得分:0)
ArrayList中有一个内置方法。所以你可以在orderdItems上实现它,如:
orderedItems.clear()
同时检查一下: http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
答案 6 :(得分:0)
您可以通过调用clear方法
来清空ArrayListorderItems.clear();