私はすでに数分前にこれに近い別の質問をしており、良い答えがありましたが、それは私が探していたものではなかったので、もう少し明確にしようとしました.
クラスに Thread のリストがあるとしましょう:
class Network {
private List<Thread> tArray = new ArrayList<Thread>();
private List<ObjectInputStream> input = new ArrayList<ObjectInputStream>();
private void aMethod() {
for(int i = 0; i < 10; i++) {
Runnable r = new Runnable() {
public void run() {
try {
String received = (String) input.get(****).readObject(); // I don't know what to put here instead of the ****
showReceived(received); // random method in Network class
} catch (IOException ioException) {
ioException.printStackTrace();
}
}
}
tArray.add(new Thread(r));
tArray.get(i).start();
}
}
}
* *の代わりに何を入力すればよいですか? たとえば、tArray リストの最初のスレッドは、入力リストの最初の入力にのみアクセスする必要があります。
EDIT:私の入力リストにはすでに10個の要素があるとしましょう