Java Gui: alles verschwindet nach hinzufügen von JButton?

Guten Tag zusammen,

wenn ich die JButtons hinzufüge verschwindet der JLabel und der Button selber.

ich weis nicht wie ich da vorgehen soll, weil ich erst heute mit Gui angefangen habe zu arbeiten.

Das Bild zeigt, wie es mir anzeigt, wenn ich die JButtons hinzufüge.

Ich würde mich auf eure Antworten freuen :)

import java.awt.Color;
import java.awt.Container;
import java.awt.Font;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Game {

    JFrame window;
    Container con;
    JPanel titleNamePanel;
    JPanel startButtonPanel;
    JLabel titleNameLabel ;
    Font titleFont = new Font("Times New romans", Font.PLAIN, 28);
    JButton startButton;
    public static void main(String[] args) {

        new Game();

    }

    public Game() {

        window = new JFrame();
        window.setSize(800, 600);
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.getContentPane().setBackground(Color.black);
        window.setLayout(null);
        window.setVisible(true);
        con = window.getContentPane();

        titleNamePanel = new JPanel();
        titleNamePanel.setBounds(100, 100, 600, 150);
        titleNamePanel.setBackground(Color.blue);
        titleNameLabel = new JLabel("TEST");
        titleNameLabel.setForeground(Color.white);
        titleNameLabel.setFont(titleFont);

        startButtonPanel = new JPanel();
        startButtonPanel.setBounds(300, 400, 200, 100);
        startButtonPanel.setBackground(Color.blue);

        startButton = new JButton("START");
        startButton.setBackground(Color.black);
        startButton.setForeground(Color.white);
        
        titleNamePanel.add(titleNameLabel);
        startButtonPanel.add(startButton);
        con.add(titleNamePanel);
        con.add(startButtonPanel);

    }
}
Bild zum Beitrag
programmieren, Java, Code, jButton, Java Swing
MD5-Hash bei Java und C# geben nicht das selbe Ergebnis?

Hallo zusammen,

ich versuche in den letzten Tage mich mit der Entwickleroberfläche der FritzBox auseinander zu setzen. Leider scheitete ich am Session ID Login.

Der Login funktioniert über eine Challenge (String) den mir die FritzBox generiert und dem Passwort der FritzBox. Wenn ich den Login richtig verstanden habe geht er wie folgt:

Schritt 1: Challenge erhalten via fritz.box/login_sid.lua

Schritt 2: Alle Zeichen im Passwort der FritzBox, welche nicht in ISO-8859-1  
           anzeigbar sind (einen CodePoint von über 255 besitzen) mit einem "."  
           ersetzen

Schritt 3: Einen MD5-Hash im Format von 32 Hexzeichen mit Kleinbuchstaben 
           generieren aus dem String %Challenge%-%Passwort% (%Challenge% ist die
           aus dem Schritt 1, %Passwort% ist das Passwort der FritzBox aus dem 
           Schritt 2)

Schritt 4: Das Ergebnis zum Anmelden nutzen: 
           http://fritz.box/login_sid.lua?response=%Challenge%-%Ergebnis% 
           (%Ergebnis% ist der 
           MD5-Hash aus Schritt 3)

So: Was ist nun mein Problem?

Ich möchte diesen MD5-Hash generieren. Ich habe mir bereits Tutorials angeschaut, wie die von baeldung.com und auch einen String als Ergebnis bekommen. Das Problem ist aber, dass der Hash falsch ist.

Also habe ich mir den Beispiel C#-Code auf der FritzBox Webseite angeschaut und ausprobiert. Das Ergebnis ist ein ganz anderer Hash. Wie kommt das zu Stande?

Damit man mich besser versteht, habe ich hier meinen Java Code und den Code aus C#.

Input bei allen:

51cbb71a-Test

Java (Möglichkeit 1): https://pastebin.com/vpzA8mr9 (um Platz zu sparen als Link)

Output:

DigestTest: 3e2a82112b721922d21a2e62e12f02212b02142c12692a82

Java (Möglichkeit 2):

StringBuilder builder = new StringBuilder();
for (byte b : DigestUtils.md5(input)) {
    builder.append(byteToHex(b));
}
System.out.println("BuilderDigest: " + builder.toString());

Output:

BuilderDigest: 3ea811b7192d1ae6e1f021b014c169a8

Java (Möglichkeit 3):

String md5Hex = DigestUtils.md5Hex(input); //API: commons-codec-1.15.jar
System.out.println("Hash: " + md5Hex);

Output:

Hash: 3ea811b7192d1ae6e1f021b014c169a8

C#

static void Main(string[] args) {
  try {
    MD5 md5Hasher = MD5.Create();
    byte[] encoded = Encoding.Unicode.GetBytes("51cbb71a-Test");
    byte[] data = md5Hasher.ComputeHash(encoded);
    StringBuilder builder = new StringBuilder();
    for (int i = 0; i < data.Length; i++) {
      builder.Append(data[i].ToString("x2"));
    }
    Console.WriteLine(builder.ToString());
  } catch(IndexOutOfRangeException exception) {
    Console.WriteLine("null");
  }
}

Output:

0e9af10abdb7cd7119a85967272e3bc3

Wieso kommt da was anderes raus und wie kann ich das nun auch in Java umsetzen? (Der C#-Code gibt die richtige Lösung!)

Danke schon einmal im Voraus!

Links die Helfen können:

  • https://avm.de/fileadmin/user_upload/Global/Service/Schnittstellen/Session-ID_deutsch_13Nov18.pdf
  • https://www.baeldung.com/java-md5 (etwas alt)
  • https://www.youtube.com/watch?v=hW2s03abGaI
  • https://codedocu.de/...
Computer, programmieren, Java, C Sharp, Encoding, Informatik, Verschlüsselung
Selbstständiger Programmierer werden, Lernzeit?

Hallo, ich möchte Selbstständiger Programmierer werden, da es die einzige tätigkeit ist, die mich wirklich erfüllt.

Ich habe bereits 2 Jahre erfahrung mit Java gesammelt, und nun möchte ich in einem Jahr soviel wissen ansammeln wie es nur möglich ist.

Meine Eltern haben mir einen Zeit puffer von einem Jahr gegeben, wo ich mich um die Selbstständigkeit kümmern soll.

Ich möchte in diesem Jahr so Gaß geben wie kein anderer. Mein Plan ist es Java,Unity, HTML,PHP,JavaScript und CSS zu "meistern".

Ich lerne schon seit 2 Wochen und komme langsam vorran.

Mein Plan bestand daraus:

6 Uhr aufstehen kurz duschen, dann lernen bis 13 Uhr.

13 Uhr kurz zum Sport um meinen Körper genau so fitt zu halten wie mein Geist.

14 Uhr nachhause wieder Duschen dann 1-2 Stunden Zocken/YT dann bis 19 Uhr weiter lernen. Dannach schaue ich weiter YouTube oder ich Zocke irgendwas.

So jetzt zur meiner Frage, wie viel kann ich mehr Lernen? Ich hatte vor das Zocken komplett aus meinem Leben zu schreichen, meine Sozialen kontakte alle Abzubrechen, um mich kontinuierlich auf das Lernen zu Konzentrieren.

Das heißt: schlafen, lernen, sport, lernen - return;

Komme ich damit schneller vorran? Ich möchte mein Ziel erreichen koste es was es wolle. Ich möchte aber auch kein BurnOut, damit ich immer weiter machen kann.

Wie soll ich mir meine Zeit einteilen, ich möchte mein Ziel erreichen, aber länger als ein Jahr hab ich nicht. Ich weiß das man als Selbstständiger Programmierer Geld verdienen kann, ich weiß auch wie ich das anstellen muss um damit Geld zu verdienen. Nur fehlt mir das nötige wissen in diesen Programmier sprachen.

Was sagt ihr dazu, sollte ich einfach so weiter machen oder mich mehr auf das Lernen konzentrieren.

Lern Tipps von erfahrenen Developer'n nehme ich mir jetzt auch bei denn Antworten zu herzen. alles andere natürlich auch!

Unnötiges Hintergrundwissen, wenn' es jemanden juckt - sonst einfach Skippen und Antworten:

Ich war bereits bei 8 - 9 Arbeitgeber, diese waren auch immer "nett". Nur fehlte mir immer was, oder mich störte etwas. Ich hab einfach gemerkt das, dass Arbeiten in der selben Täglichen Routine nichts für mich ist. Ich möchte mehr aus meinem Leben machen, kein Zahnrad sein, sondern die Ganze Uhr.

Nachdem ich meine letze Arbeit gekündigt hatte, da ich es nicht aushalte unter Affen zu Arbeiten, habe ich mich dazu Entschieden alles mögliche über Marketing zu lernen. Da kamm ich auf den Entschluss-

unten geht es weiter: (zeichenlimit erreicht)

Selbständigkeit, HTML, programmieren, CSS, Java, JavaScript, PHP, selbständig machen
Was ist besser?

Hey Community,

Ich bin momentan auf der Suche nach einem gutem Serverhoster für mein Minecraft-Netzwerk.

Eigentlich wollte ich Living Bots nehmen, denn die spezialisieren ja sich darauf und biten für 20€ im Monat folgendes:

  • 4 AMD EPYC CPU Cores (also 64)
  • Memory 12 GB RAM - schneller DDR4 Speicher mit ECC-Fehlerkorrektur
  • Storage 80 GB SSD - ausfallsicherer SSD Clusterstorage

(Quelle)

Allerdings wurde mir hier mehrmals auch "Contabo" empfohlen.

Die bieten für 15€ im Monat folgendes:

  • 8 CPU-Kerne
  • 30 GB RAM (garantiert)
  • 800 GB Speicherplatz (100% SSD)

(Quelle)

Ich brauche folgende Server:

  • Lobby Server, 40 Slots 4GB RAM
  • Survival Server, 20 Slots 5GB RAM
  • Skyblock Server, 20 Slots 5GB RAM
  • Acarde Minigames Server, 30 Slots 6GB RAM
  • Eigener Spielmodus, 8 Slots 3GB RAM
  • SpeedUHC, 16 Slots 3GB RAM
  • Murder Mystery, 10 Slots 2GB RAM

Natürlich reichen der Living Bots Server da nicht aus, allerdings sind bei dem Contabo Server sehr wenig Kerne dabei. Es laggt wenn die Spieler zwischen den Servern joinen und leaven.

Was ist also besser? (Bei Living Bots muss Ich dann mit der RAM runtergehen). Oder kennt jemand einen Kompromiss (bitte nicht mehr als 20€ im Monat, mit Store und Forum Website ist das schon sehr gut für einen neuen Server).

Contabo 44%
Nimm lieber das hier: 33%
Living Bots 22%
PC, Server, Computer, Technik, Linux, CPU, programmieren, Java, RAM, Gaming, Minecraft, Minecraft Server, Plug-in, Spigot, BungeeCord, Spiele und Gaming
Java Arrays richtig vergleichen?

Ich möchte in meinem Lotto-Programm ein Spieler-Tipp-Array mit einem Lotto-Wahl-Array vergleichen. Dazu habe ich mal zum Testen diesen Code erstellt.

Hier der Code zum Kopieren:

String[] LottoZahlen = new String[6];
String[] SpielerZahlen = new String[6];

LottoZahlen[0] = Integer.toString(12);
LottoZahlen[1] = Integer.toString(14);
LottoZahlen[2] = Integer.toString(7);
LottoZahlen[3] = Integer.toString(18);
LottoZahlen[4] = Integer.toString(5);
LottoZahlen[5] = Integer.toString(49);

SpielerZahlen[0] = Integer.toString(12);
SpielerZahlen[1] = Integer.toString(7);
SpielerZahlen[2] = Integer.toString(5);
SpielerZahlen[3] = Integer.toString(18);
SpielerZahlen[4] = Integer.toString(13);
SpielerZahlen[5] = Integer.toString(49);

int gewinn;
gewinn = 0;

for (int i = 0; i < 6; i++) {
  for (int ao = 0; i < 6; i++) {
    if (LottoZahlen[i].equals(SpielerZahlen[ao])) {
      gewinn++;
    }
  }
}

// das ist dann halt die Ausgabe...
switch (gewinn) {
  case 1:
    System.out.println("1er:  Der 5te Schein hat einen Lotto 1er erreicht...");
    break;
  case 2:
    System.out.println("2er:  Der 5te Schein hat es fast in den Gewinnpot geschafft!");
    break;
  case 3:
    System.out.println("$$$  GLÜCKWUNSCH! Der 5te Schein hat einen Lotto 3er erzielt!");
    break;
  case 4:
    System.out.println("$$$$  SUPER! Der 5te Schein hat einen Lotto 4er erzielt!");
    break;
  case 5:
    System.out.println("$$$$$ WIIILD! Der 5te Schein hat einen Lotto 5er erzielt!");
    break;
  case 6:
    System.out.println("$$$$$$ JACKPOT!!! Der 5te Schein hat einen Lotto 6er erzielt!");
    break;
  default:
    System.out.println("Leider Niete... Der 5te Schein hat keinen Gewinn erzielt!");
    break;
}

Es sollte eigentlich in der Konsole ausgegeben werden, dass ich einen Lotto-5er gewonnen habe aber es kommt nur ein Einer heraus.

Kann mir jemand helfen, eine Möglichkeit zu finden, alle Stellen des ersten Arrays mit allen Stellen des zweiten Arrays zu vergleichen?

Bild zum Beitrag
Computer, programmieren, Java, Array, Spiele und Gaming
Java auf Button-Eingabe warten lassen?

In meinem Java-Programm wird an einer Stelle ein neuer JDialog erstellt und ich möchte, dass die Klasse, über die den Dialog aufgerufen wird, solange wartet, bis in dem Dialog ein Button angeklickt wird.

Methode der Klasse Spiel:

public boolean handeln(Spieler aktuellerSpieler, Spieler Partner) {
  if (aktuellerSpieler == Partner) {
    JOptionPane.showMessageDialog(Spiel.this, "Sie können nicht mit sich selber handeln!", "FEHLER", JOptionPane.WARNING_MESSAGE);
    return false;
  }

  setVisible(false);
  Handel dialog = new Handel(aktuellerSpieler, Partner, Spiel.this);

  // Warte auf Button Eingabe in dialog
  return true;
}

Code der Dialog-Klasse:

public Handel(Spieler player1, Spieler player2, Spiel Instanz) {
  setVisible(true);

  setBounds(100, 100, 1030, 471);
  getContentPane().setLayout(new BorderLayout());
  contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
  getContentPane().add(contentPanel, BorderLayout.CENTER);
  contentPanel.setLayout(null);

  {
    JPanel buttonPane = new JPanel();
    buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
    getContentPane().add(buttonPane, BorderLayout.SOUTH);

    {
      JButton okButton = new JButton("BESTÄTIGEN!");
      buttonPane.add(okButton);
      getRootPane().setDefaultButton(okButton);
    }
  
    {
      JButton cancelButton = new JButton("Exit");
      buttonPane.add(cancelButton);
      cancelButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
          Handel.this.dispose();
          Instanz.setVisible(true);

          // Auf diesen Button soll gewartet werden.
        }
      });
    }
  }
}
Computer, programmieren, Java, Informatik
Wie kann ich in einem dir alle Bilder einlesen, Java?

Hier mein Code:

import java.awt.Component;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;

public class Read extends Component {

    public static void main(String[] foo) {
        new Read();
    }

    public void printPixelARGB(int pixel, int i, int j) {
        int alpha = (pixel >> 24) & 0xff;
        int red = (pixel >> 16) & 0xff;
        int green = (pixel >> 8) & 0xff;
        int blue = (pixel) & 0xff;
        System.out.println("argb: " + alpha + ", " + red + ", " + green + ", " + blue);
        int x = ((alpha-(765-red-green-blue)/3)<<24) + (red<<16) + (green<<8) + blue;
        double y = x < 0 ? (1.0/(x))/-1 : x > 0 ? 1.0/x : 0;
        System.out.println(y);
    }

    private void marchThroughImage(BufferedImage image) {
        int w = image.getWidth();
        int h = image.getHeight();
        System.out.println("width, height: " + w + ", " + h);

        for (int i = 0; i < h; i++) {
            for (int j = 0; j < w; j++) {
                System.out.println("x,y: " + j + ", " + i);
                int pixel = image.getRGB(j, i);
                printPixelARGB(pixel, i, j);
                System.out.println("");
            }
        }
    }

    public Read() {
        try {
            // get the BufferedImage, using the ImageIO class
            BufferedImage image =
                    ImageIO.read(this.getClass().getResource("3.png"));
            marchThroughImage(image);
        } catch (IOException e) {
            System.err.println(e.getMessage());
        }
    }
} 

Meine Frage... Bei der Zeile mit "3.png" soll stehen, dass alle png Files einer dir z.b. C:\Users\xy\pngdir eingelesen werden... Wie macht man das?

LG

PC, Computer, Technik, programmieren, Java, Expertenthemen, Informatik, Technologie, Expertenfragen, Programmcode
Taschenrechner in java (Variablentyp gesucht)?

Moin,

fange grad an mit einem Tutorial auf Youtube java zu lernen. Eine Aufgabe war es einen Taschenrechner zu bauen. Das war aber in dem Video ziemlich schlecht und ich dachte mir : " das kannst du besser".

Kurz gesagt wollte ich das man auswählen kann, ob man mal plus minus oder durch rechnet (konnte man in dem Video nicht). Jedoch will ich eine Variable, die das Operationszeichen speichern kann. Anscheinend geht int ja nicht.

Das ist der Code : beim Starten bekomme ich immer java: illegal start of expression

public class taschenrechner {

    public static void main(String[] args) {
        double zahl1, zahl2, ergebnis;
        int Operationszeichen;
        Scanner scanner = new Scanner(System.in);
        System.out.println("erste Zahl?");
        zahl1 = scanner.nextDouble();
        System.out.println("Operationszeichen bitte?");
        Operationszeichen = scanner.nextInt();
        System.out.println("2te Zahl bitte");
        zahl2 = scanner.nextDouble();
        if (Operationszeichen = + ) {
            ergebnis = zahl1 + zahl2;
            System.out.println(ergebnis); }
            else if (Operationszeichen = - ) {    
                ergebnis = zahl1 - zahl2;
                System.out.println(ergebnis);
            }
            else if (Operationszeichen = * ) {    
                ergebnis = zahl1 * zahl2;
                System.out.println(ergebnis);
        }
            else (Operationszeichen = / ) {      
                ergebnis = zahl1 / zahl2;
                System.out.println(ergebnis);
        }

        }
    }


Ich bekomme ausserdem in dem Code rot untertstrichene Stellen, aber keine Lösungsmöglickeit. https://prnt.sc/u6wazx

Danke schonmal im Vorraus

Computer, Mathematik, Java, Taschenrechner
Twitch API mit HttpURLConnection läuft nicht?

Moin an alle,

ich würde gerne auf die Twitch API zugreifen und abfragen ob ein bestimmter Kanal grade Streamt.

Hier der Code:

String Streamer = "Test";


URL url;
HttpURLConnection connection = null;

try{
    //create connection
    url = new URL(("https://api.twitch.tv/kraken/channels/"  + Streamer));
    connection = (HttpURLConnection)url.openConnection();
    connection.setRequestMethod("GET");
    connection.setRequestProperty("Client-ID",
                                  Secrets.twitch_clientid);

    connection.setUseCaches(false);
    connection.setDoInput(true);
    connection.setDoOutput(true);

    //Send request
    DataOutputStream wr = new DataOutputStream(
        connection.getOutputStream());

    //Get response
    InputStream is = connection.getInputStream();
    BufferedReader rd = new BufferedReader(new InputStreamReader(is));
    String line;
    StringBuffer response = new StringBuffer();
    while((line = rd.readLine()) != null){
        response.append(line);
        response.append('\r');
    }
    rd.close();
    System.out.println(response.toString());
} catch (Exception e){
    e.printStackTrace();
    System.out.println("NULL");
} finally {
    if (connection != null) {
        connection.disconnect();
    }
}

Was ich als Output bekomme:

java.io.FileNotFoundException: https://api.twitch.tv/kraken/channels/Test
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1923)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1523)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224)
at me.duncte123.ge.commands.cmdTest.handle(cmdTest.java:47)
at me.duncte123.ge.CommandManager.handleCommand(CommandManager.java:59)
at me.duncte123.ge.Listener.onGuildMessageReceived(Listener.java:60)
at net.dv8tion.jda.core.hooks.ListenerAdapter.onEvent(ListenerAdapter.java:381)
at net.dv8tion.jda.core.hooks.InterfacedEventManager.handle(InterfacedEventManager.java:84)
at net.dv8tion.jda.core.handle.MessageCreateHandler.handleInternally(MessageCreateHandler.java:95)
at net.dv8tion.jda.core.handle.SocketHandler.handle(SocketHandler.java:37)
at net.dv8tion.jda.core.requests.WebSocketClient.onDispatch(WebSocketClient.java:868)
at 

Hat jemand dasselbe Problem auch mal gehabt? Mache ich etwas falsch?

Gruß

Dennis

programmieren, Java, http, API, Twitch
Umgekehrte Polnische Notation / Postfix-Notation über Stack programmieren, so richtig?

Hallo,

ich soll die umgekehrte polnische Notation / Postfix-Notation in Java mit Hilfe eines Stacks programmieren. Dafür stehen mir nur folgende Informationen zur Verfügung:

public class IntegerStack {
  public boolean emptystack();
  public int head();
  public void push(int i);
  public int pop();
}

Leider zeigt ein Testfall als Fehler Folgendes an:

IntegerStack s = new IntegerStack();
String[] input = {"1", "2", "*", "3", "4", "*", "+"};
Calculator(input, s);
System.out.println(s.compareHistory(new String[] {
  "[1]",
  "[1, 2]",
  "[1]",
  "[]",
  "[2]",
  "[2, 3]",
  "[2, 3, 4]",
  "[2, 3]",
  "[2]",
  "[2, 12]",
  "[2]",
  "[]",
  "[14]",
  "[]" }
));

// erwartet:
true
// erhalten:
wrong history length: target 14 - is 0
false

Ich kann diesen Fehler nicht deuten. Kann mir bitte jemand sagen, was da falsch sein soll? Ich weiß nicht, was ich beheben soll.

Anbei mein Code:

public int Calculator(String[] input, IntegerStack s) {
  s = new IntegerStack();

  for (int i = 0; i < input.length; i++) {
    switch(input[i]) {
      case "+":
        int x = s.pop();
        int y = s.pop();

      
          s.push(y + x);
        
        break;
      case "-":
        x = s.pop();
        y = s.pop();

       
          s.push(y - x);
        
        break;
      case "/":
        x = s.pop();
        y = s.pop();

      
          s.push(y / x);
       
        break;
      case "*":
        x = s.pop();
        y = s.pop();

        
          s.push(y * x);
        
        break;
      case " ":
        break;
      default:
        if (input[i] != null) {
          s.push(Integer.parseInt(input[i]));
        }
        else {
        }
        ;
      }
    }

    int z = s.pop();
    return z;
  }
Computer, Freizeit, Studium, Schule, Mathematik, programmieren, Java, Informatik, Physik, stack, Algorithmen und Datenstrukturen
Java Binary Tree Remove Methode implementieren?

Hey Leute,
Ich versuche folgende Binary Tree Methode zu implementieren:

public void remove(T data) {
    root = remove(root, data);
}

private Nodes<T> remove(Nodes<T> root, T data) {
    Nodes<T> current = root;
    if (current == null) {
        return current;
    }
    if (current.getData().compareTo(data) > 0) {
        current.getLeftChild() = remove(current.getLeftChild(), data);
    } else if (current.getData().compareTo(data) < 0) {
        current.getRightChild() = remove(current.getRightChild(), data);
    } else {
        if (current.getLeftChild() == null && current.getRightChild() == null) {
            current = null;
        } else if (current.getRightChild() == null) {
            current = current.getLeftChild();
        } else if (current.getLeftChild() == null) {
            current = current.getRightChild();
        } else {
            Nodes<T> temp = findMinFromRight(current.getRightChild());
            current.getData() = temp.getData();
            current.getRightChild() = remove(current.getRightChild(), temp.getData());
        }
    }
    return current;
}

Er zeigt mir bei folgenden Abschnitten "Variable expected" an, aber hier sollte keine Variable erwartet werden:

if (current.getData().compareTo(data) > 0) {
    current.getLeftChild() = remove(current.getLeftChild(), data);
} else if (current.getData().compareTo(data) < 0) {
    current.getRightChild() = remove(current.getRightChild(), data);

...

 else {
    Nodes<T> temp = findMinFromRight(current.getRightChild());
    current.getData() = temp.getData();
    current.getRightChild() = remove(current.getRightChild(), temp.getData());
}

Danke schonmal für eure Hilfe!

Computer, programmieren, Java, Informatik, Liste, IntelliJ IDEA

Meistgelesene Beiträge zum Thema Java