-1

を作成したいです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;
 }
4

2 に答える 2