Поместите все действительные числа в ArrayList и вместо этого выберите случайный индекс из списка.Затем удалите это число из списка и повторите.
Моя Java немного ржавая, так что, надеюсь, код, который я пишу, имеет смысл:
ArrayList<int> validOptions = /**/; // make your list with all initial options
int firstIndex = random.Next(validOptions.count());
int firstPick = validOptions.get(firstIndex);
validOptions.removeAt(firstIndex);
int secondIndex = random.Next(validOptions.count());
int secondPick = validOptions.get(secondIndex);
validOptions.removeAt(firstIndex);