を作成したいです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>[]>
。私はこれが初めてです。助けてください!
対応する可能な回答値への質問 ID の変更不可能なマップが必要です。可能な答えは列挙型です
可能な回答は次のようにラップされます。
public class RecognizedAnswers {
public enum AnswerEnum1 implements SomeInterface;
public enum Answer2 implements SomeInterface;
}