Hey ich hätte da nochmal eine Frage. Ich will eine ArrayList zufällig ausgeben lassen und die ausgegebene Zeile soll aus dem Array gelöscht werden, dass es keine Wiederholungen gibt. Das hat auch geklappt nur in der ausgabe bleiben dann die Zeilen leer anstatt ne neue Zahl zu generieren die es noch nicht gibt. Das hab ich bis jetzt:
Danke schonmal für die Hilfe 
Java:
//....
if(songAnzahl == b){
try {
final JFrame fertigeSetlist2 = new JFrame();
fertigeSetlist2.setLayout(null);
fertigeSetlist2.setSize(700,700);
// fertigeSetlist2.setExtendedState(java.awt.Frame.MAXIMIZED_BOTH);
fertigeSetlist2.setTitle("songAnzahl()- Slider");
fertigeSetlist2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fertigeSetlist2.setVisible(true);
fertigeSetlist.setVisible(false);
JButton backButton = new JButton ("Zurück");
backButton.setBounds(50, 580, 150, 50);
fertigeSetlist2.add(backButton);
backButton.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
songAnzahl();
fertigeSetlist2.setVisible(false);
}
});
ArrayList<String> songs = new ArrayList<String>();
String line;
BufferedReader inReader = new BufferedReader(new FileReader("Lieddatei.txt"));
int rand;
Random r = new Random();
System.out.println("Wiederholungen müssen noch verhindert werden");
while((line = inReader.readLine())!= null){
songs.add(line);
}
String[] sSong = (String[])songs.toArray(new String[0]);
if (sSong.length == 0){
JOptionPane.showMessageDialog(null, " Du musst zuerst Lieder hinzufügen! ","Error", JOptionPane.ERROR_MESSAGE);
}
for(int i=0; i<b;i++){
rand= r.nextInt(sSong.length);
//boolean listeVoll = false;
for(Iterator<String> iterator = songs.iterator();iterator.hasNext();){
String a = iterator.next();
if(a.equals(sSong[rand])){
iterator.remove();
JLabel label = new JLabel(sSong[rand]);
//JLabel label = new JLabel(sSong[rand]);
label.setBounds(250, i*20, 400, 100);
label.setLayout(null);
fertigeSetlist2.add(label);
}
};