Java聊天室程序



我必须将当前用户显示到gui中,但它一直说哈希集为空,这已经困扰了我几个小时。解决这个问题最简单的方法是什么?可能有很多未使用的代码,因为我正在测试东西,试图使它工作。

Client.java

public class Client {
    Server.names();
}

Server.java

public class Server {    
    public static HashSet<String> names = new HashSet<String>();
    public static void main(String[] args) throws Exception{                    
        while(true){
            name = in.readLine();
            if(name == null){
                return;
            }
            if(!names.contains(name)){
                 names.add(name);
                 break;
            }            
        }
    }
}

你的Q有点不清楚,但如果你想从你的Server类中获得HashSet, names,你需要通过调用Server.name来获得对它的引用,而不是Server.name(),因为它不是一个方法。

现在names将是空的,直到你填充它。要填充它,您需要调用读取用户输入并将其存储在names中的代码。在这种情况下,您可以调用Servermain方法(参见此处的相关Q),但除非您真的希望将其作为Servermain方法,否则我建议将该方法重命名为populateNames()或类似的方法。

最新更新