如何在java中删除列表?

如何在java中删除列表?,java,list,Java,List,我让客户列表说,列表将始终有5行,我必须在迭代中删除最后三行 for (Customer cust: oh.getCustomer()) { // Check the size of order and remove the last three rows } 有什么建议吗???您需要一个for循环而不是foreach: 或者类似的事情 或者您可以使用此方法删除最后3项:获取列表的子集如何 你的意思是 List<Customer> cust

我让客户列表说,列表将始终有5行,我必须在迭代中删除最后三行

for (Customer cust: oh.getCustomer()) {  
// Check the size of order and remove the last three rows                   
}
有什么建议吗???

您需要一个for循环而不是foreach:

或者类似的事情


或者您可以使用此方法删除最后3项:

获取列表的子集如何

你的意思是

List<Customer> customers = oh.getCustomer();
for(int i = -1; i >= -3 && customer.size()>0;i--)
    oh.removeCustomer(customers.get(customer.size() - i));
如果您的oh.getCustomer是java.util.list,您可以尝试以下方法:

List<Customer> customers = oh.getCustomer();
customers.subList(2, customers.size()).clear();
有很多方法可以做到这一点

正如您所知,列表是按索引排序的

列表将始终有5行

您知道该列表将始终包含5个元素

然后,您不需要使用for循环,创建一个新列表,从存在列表中获取前两个元素,并将其添加到新创建的列表中

List<Customer> customerList = new ArrayList<Customer>();

customerList.add(oldList.get(0))

customerList.add(oldList.get(1))

您编写的唯一一行代码似乎没有意义。oh.getCustomer会返回一个可数的客户集合吗?您没有告诉客户列表的总数。您能详细说明您的问题吗?
List<Customer> customers = oh.getCustomer();
customers.subList(2, customers.size()).clear();
List<Customer> customerList = new ArrayList<Customer>();

customerList.add(oldList.get(0))

customerList.add(oldList.get(1))