0

我对java很陌生,目前还没有学到很多东西,但是我有一个问题。

我正在尝试将在线程中运行的变量传递给另一个 java 类。

在我正在运行的客户端线程中:

UserReg UR = new UserReg();
UR.addUser(userID);

在我得到的单独的java类中:

import java.util.ArrayList;

public class UserReg {

    ArrayList userList = new ArrayList();

    void addUser (String UserID) {   
        userList.add(UserID);
        System.out.println(userList);  
    }  
}

我遇到的问题是,每次运行新线程时,它都会覆盖数组列表并且不会添加到其中。

4

1 回答 1

0

那是因为它与此有关:

UserReg UR = new UserReg();
UR.addUser(userID);

每次,它都会初始化 theuserReg并因此初始化ArrayList内部。

您可能会做的是(暂时但不是一个体面的解决方案)会使userList静态

于 2013-03-31T17:32:13.453 回答