我有一个客户端的ArrayList,有人可以告诉我如何编写一个循环并让每个客户端进入arraylist
List<Client> Clients = new ArrayList<Client>();
答案 0 :(得分:3)
for(Client client: Clients) {
//work here with client
}
BTW by Java中的约定变量名称应以小写(clients
)开头。
答案 1 :(得分:1)
有很多方法可以通过ArrayList实现循环。使用的三种最常见的方式是:
案例1:传统的for循环
for(int i=0; i<clients.size; i++){
clients.get(i).doSomeMethod(); //Code to work with individual client here
}
在需要元素的索引时使用。当您希望迭代多个集合时也很有用。可用于修改当前索引元素或您知道索引的任何元素。总而言之,程序员可以更好地控制下面列出的方法。
案例2:'增强'for循环 - 也称为'for-each'循环
for(Client client: Clients) {
client.doSomeMethod(); //Code to work with a client here
}
增强的for循环不能用于所有内容;例如,当您遍历Collection(在本例中为ArrayList)时,它们不能用于删除元素,如果您尝试循环遍历多个集合,它们也没有用处。当你想要以倒数第一的顺序遍历ArrayList并且不需要当前元素的索引时,它们最有用。
案例3:迭代器方法:
Iterator<Client> itr = clients.iterator();
while(itr.hasNext()) {
Client myClient = itr.next();
myClient.doSomeMethod()//Code to work with myClient here
}
这种方法几乎就是增强的for循环在底层所做的,并且为了完整性而添加了。