ฉันต้องการสร้าง Map<Long, Enum< ? extends SomeInterface>
ตัวเลือกใดที่ดีที่สุดสำหรับฉันคืออะไร?
ฉันลองอันนี้
private Map<Long, Enum<? extends SomeInterface>[]> questionIdToanswersMapping = Collections.unmodifiableMap(Stream.of(
new SimpleEntry<>(QuestionEnum1.getQuestionId(), AnswerEnum1.values()),
new SimpleEntry<>(QuestionEnum2.getQuestionId(), AnswerEnum2.values()),
new SimpleEntry<>(QuestionEnum3.getQuestionId(), AnswerEnum3.values()),
new SimpleEntry<>(QuestionEnum4.getQuestionId(), AnswerEnum4.values()),
new SimpleEntry<>(QuestionEnum5.getQuestionId(), AnswerEnum5.values()))
.collect(Collectors.toMap((e) -> e.getKey(), (e) -> e.getValue())));
แต่มีข้อผิดพลาด "ไม่สามารถแปลงจาก Map<Object,Object>
เป็น Map<Long,Enum<? extends SomeEnum>[]>
" ฉันยังใหม่กับสิ่งนี้ กรุณาช่วย!
ฉันต้องการแผนที่รหัสคำถามที่ไม่สามารถแก้ไขได้กับค่าคำตอบที่เป็นไปได้ที่สอดคล้องกัน คำตอบที่เป็นไปได้คือ Enums
คำตอบที่เป็นไปได้จะมีลักษณะดังนี้:
public class RecognizedAnswers {
public enum AnswerEnum1 implements SomeInterface;
public enum Answer2 implements SomeInterface;
}
MyEnum.getClass().equals(MyEnum.VALUE.getClass()
สามารถคืนค่า false ได้ นี่คือตัวอย่างจากคำถาม SO - person dimo414   schedule 11.04.2017