我必须将当前用户显示到gui中,但它一直说这个hashset是空的,这已经困扰了我几个小时。解决这个问题的最简单方法是什么?可能有很多未使用的代码,因为我正在测试试图让它工作的东西。
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;
}
}
}
}
答案 0 :(得分:1)
你的Q有点不清楚,但如果你想从HashSet
课程中获得names
,Server
,你需要通过调用{{1}来获取它的引用},而不是Server.name
,因为它不是一种方法。
现在Server.name()
将为空,直到您填充它为止。要填充它,您需要调用将读取用户输入并将其存储在names
中的代码。在这种情况下,您可以调用names
的{{1}}方法(请参阅此相关问答here),但除非您确实希望将其作为main
Server
方法我建议将方法重命名为main
或类似的东西。