Melhor estrutura para a lista de valor-chave (inteiro, string) a ser embaralhada

Eu preciso implementar uma estrutura em Java que é uma lista de valores-chave (de tipos Integer-String) e eu quero embaralhá-lo.

Basicamente, gostaria de fazer algo assim.

    public LinkedHashMap<Integer, String> getQuestionOptionsMap(){

    LinkedHashMap<Integer, String>  shuffle = new LinkedHashMap<Integer, String> ();

    if (answer1 != null)
        shuffle.put(new Integer(1), answer1);
    if (answer2 != null)
        shuffle.put(new Integer(2), answer2);
    if (answer3 != null)
        shuffle.put(new Integer(3), answer3);
    if (answer4 != null) 
        shuffle.put(new Integer(4), answer4);

    Collections.shuffle(shuffle);
    return shuffle;
}

No entanto, o HashMap não pode ser embaralhado.

Eu poderia obter aleatoriamente uma chave do hashmap e, em seguida, retornar o elemento vinculado, mas tenho certeza de que essa não é a melhor solução para o meu problema.

Existe alguma maneira melhor?

Desde já, obrigado.

questionAnswers(3)

yourAnswerToTheQuestion