2016-05-31 18 views
-1

Ich habe ein Array 2D von CellPanes, zufällig gefüllt. Hintergrund ist eine Instanzvariable von CellPane, vom Typ Color. Wie Elemente entfernen, die denselben Wert von Hintergrund teilen?Objekt [] [] zu einer verknüpften Sammlung in Java

public CellPane[][] board = new CellPane[ROWS][COLS]; private static final int ROWS = 4; private static final int COLS = 4; GridBagConstraints gbc;

public class CellPane extends JPanel 
{ 

    /** 
    * 
    */ 
    private static final long serialVersionUID = 1L; 
    public ArrayList<Color> cores = new ArrayList<Color>(); 
    private Color Background; 

In Arraylist Kern, ich habe die Farbe, die ich den Hintergrund var haben will. Jedes Element in der Array-Platine hat also eine andere Hintergrundfarbe. Jetzt möchte ich, dass wenn ein Element ausgewählt ist, alle Elemente neben dem Original entfernt werden, oder auf Null geändert werden. Es ist dieser Teil der Verknüpfungselemente, die den gleichen Wert im Hintergrund haben, den ich tun muss, aber die Elemente müssen die gleiche Position haben. Ist es noch unklar? Bitte kommentieren Sie, wenn es unklar ist, werde ich es versuchen

+0

'CellPane [] []' -> 'CellPane []' -> 'stream' ->' sammeln (.. toMap) ' – Andrew

+0

Sie können Elemente aus einem Array nicht entfernen. Willst du sie null machen? Und was meinst du mit "verlinkt"? – shmosel

+0

Im Moment mache ich sie einfach null. –

Antwort

0

Sie müssten es manuell tun, gibt es keine Funktion, die einen solchen Algorithmus in der Standard-Java-Bibliothek hat. Abgesehen davon ist deine Frage nicht sehr klar. Möchten Sie mehrere Collections haben, die CellPanes mit demselben Hintergrund haben oder möchten Sie eine Collection mit bestimmten Eigenschaften haben?

+0

Ich habe die Frage bearbeitet, ist es noch vage? –

Verwandte Themen