public void setButtonDefs() { // Preconditions: words is initialized, preloaded is initialized. // Postconditions: definitions of words are added onto the radio buttons. // Sets the buttons to be set to random definitions from the preloaded list. // Making sure to not load the same definitions. Random rnd = new Random(); HashMap duplicates = new HashMap(5); String[] defs = new String[4]; // Mastery Factor: Implementing an ADT // Uses a Hash Map to check for duplicates amongst the options. duplicates.add(words[current].getDefinition()); for (int i = 0; i < 4; i++) { String def = preload[rnd.nextInt(PRELOADEDWORDS)].getDefinition(); while (duplicates.contains(def)) { def = preload[rnd.nextInt(PRELOADEDWORDS)].getDefinition(); } duplicates.add(def); defs[i] = def; } aRadBtn.setText(defs[0]); bRadBtn.setText(defs[1]); cRadBtn.setText(defs[2]); dRadBtn.setText(defs[3]); }