无法从元素类型 Object 转换为 Session
Can not convert from element type Object to Session
private static final Set sessions = Collections.synchronizedSet(new HashSet());
我将会话存储在上面显示的名为 sessions
的 Set 类型引用变量中。
现在,我想重复这些:
for(Session s : sessions){}
但是,我收到一个类型不匹配错误
Can not convert from element type Object to Session
我该如何解决这个问题?
TL;DR: 不要使用 RAWTYPES
你使用的是原始的Set
,这意味着编译器只能知道你的Set
包含Object
。
您需要指定集合的 generic 类型:
Set<Session> sessions = Collections.synchronizedSet(new HashSet<>());
有关详细信息,请阅读 this。
private static final Set sessions = Collections.synchronizedSet(new HashSet());
我将会话存储在上面显示的名为 sessions
的 Set 类型引用变量中。
现在,我想重复这些:
for(Session s : sessions){}
但是,我收到一个类型不匹配错误
Can not convert from element type Object to Session
我该如何解决这个问题?
TL;DR: 不要使用 RAWTYPES
你使用的是原始的Set
,这意味着编译器只能知道你的Set
包含Object
。
您需要指定集合的 generic 类型:
Set<Session> sessions = Collections.synchronizedSet(new HashSet<>());
有关详细信息,请阅读 this。