有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何读取ArrayList中的所有对象?

我有一个客户机的ArrayList,有人能告诉我如何编写一个循环,并在ArrayList中获取每个客户机吗

List<Client> Clients = new ArrayList<Client>();

共 (2) 个答案

  1. # 1 楼答案

    for(Client client: Clients) {
      //work here with client
    }
    

    Java中的BTW by约定变量名应以小写(clients)开头

  2. # 2 楼答案

    有许多方法可以实现通过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循环不能用于所有情况;例如,它们不能用于在遍历集合(本例中为ArrayList)时删除元素,如果您尝试在多个集合之间循环,它们也不会有用。当您希望从第一个到最后一个顺序遍历ArrayList并且不需要当前元素的索引时,它们非常有用

    案例3:迭代器方法:

    Iterator<Client> itr = clients.iterator(); 
    while(itr.hasNext()) {
        Client myClient = itr.next(); 
        myClient.doSomeMethod()//Code to work with myClient here
    } 
    

    这种方法实际上就是增强的for循环在下面所做的,并且是为了完整性而添加的