Java 如何在arraylist中存储线程

Java 如何在arraylist中存储线程,java,multithreading,sockets,arraylist,Java,Multithreading,Sockets,Arraylist,我有一个服务器和几个客户端。我已经为每个客户端创建了一个线程。我想在arraylist中存储每个客户端的线程或对象。并对其进行操作 ArrayList<Client> clients; Thread client = new Thread(new ClientThread(socket)); ArrayList客户端; 线程客户端=新线程(新客户端线程(套接字)); 要将每个客户端添加到客户端的arraylist中。我已经创建了一个客户端的对象数组列表。假设您在某个地方定义了Cl

我有一个服务器和几个客户端。我已经为每个客户端创建了一个线程。我想在arraylist中存储每个客户端的线程或对象。并对其进行操作

ArrayList<Client> clients;
Thread client = new Thread(new ClientThread(socket));
ArrayList客户端;
线程客户端=新线程(新客户端线程(套接字));

要将每个客户端添加到客户端的arraylist中。我已经创建了一个客户端的对象数组列表。

假设您在某个地方定义了
ClientThread
,它实现了
Runnable
,您可以执行以下操作:

List<Thread> clients = new ArrayList<Thread>();
Thread client = new Thread(new ClientThread(socket));
client.start(); //assuming you want the thread to start
//running before you put into the arrayList
clients.add(client);
List clients=new ArrayList();
线程客户端=新线程(新客户端线程(套接字));
client.start()//假设您希望线程启动
//在放入arrayList之前运行
客户。添加(客户);

ClientThread
a
Client
?客户端线程不是客户端。这是一个使用runnable进行多线程处理的类。服务器客户端和客户端线程共有3类。那么什么是
客户端
?它来自哪里?为什么要将其添加到
ArrayList
?它与您展示的线程有什么关系?您的问题中缺少很多内容。我只是想在arraylist中添加线程。想在arraylist中添加每个客户端,客户端是哪一个?添加时说,不能从静态上下文引用非静态变量客户端。第3行线程客户端=新线程(新客户端线程(套接字));client.start();客户。添加(客户);