Probleme mit Kompilierung

Moin, ich möchte ein Ratespiel erstellen, wo man 4 Zufallszahlen raten soll. Nur leider bekomme ich bei der Kompilierung immer diesen Fehler: "Mastermind.java:64: error: class, interface, or enum expected".

Bitte habt Nachsicht, ich bin nur ein Anfänger in Java.

Hier mein Code:

Java:
import java.util.Random;
import java.util.Scanner;
 
 public class Mastermind {
    
   public static void main(String [] args) {
    
    
int[] zahlen = new int[4];
int x = 0;
boolean flag = false;

for (int i=0; i<zahlen.length; i++){
do{
x = (int)(Math.random()*8)+1;
flag = false;
for (int j=0; j<zahlen.length; j++) {
if (zahlen [j] == x) {
flag = true;
break;
}
}
}
while(flag);

zahlen[i] = x;
}

for (int i=0; i<zahlen.length; i++)
System.out.println(zahlen[i]);
}

/**
* Prints random numbers between 0 and 100 (inklusiv)
*/



/**
* Reads the next characters and prints them
*/

/**
* Reads the next characters and prints them
*/
public void readChars() {
Scanner input = new Scanner(System.in);
System.out.println("Bitte raten Sie die Zahlen");
String eingabe = input.next();
System.out.println(eingabe);


if(eingabe == zahlen[i]) {
System.out.println("Das ist korrekt");
}
else if (eingabe > zahlen[i]) {
    System.out.println("Ihre Eingabe ist zu hoch");
}
else {
    System.out.println("Ihre Eingabe ist zu niedrig");
}
}
}
}
}
 
Zuletzt bearbeitet:
Von den Code-Tags mal abgesehen befinden sich in dem Programm mehrere Fehler:
Java:
int[] zahlen = new int[4];
int x = 0;
...
zahlen = x;
zahlen wurde vorher korrekt als Array behandelt, später wieder Fehler i.Z. mit zahlen
 
Der Code bis Zeile 31 funktioniert aber. Da gibt er ja einfach 4 Zufallszahlen (höchste mögliche Zahl 8) aus. Aber danach muss ich ja den Benutzer auffordern, 4 Zahlen einzugeben. Das scheint irgendwie nicht zu funktionieren.
 
gibs in eine IDE ein und dann spuckts dir sowieso sofort alles aus....auf jedenfall hast nen klammer fehler drin aber ka wo
 
jo so ungefähr S
Java:
String eingabe = input.next();// es wird ein String eingelesen du brauchst aber ein Int für zahlen 
//sonst müßtest du mit equals die Strings vergleichen und zahlen als string übergeben werden.
Integer eingabe = input.nextint();

//aber das nütz dir nicht wenn nicht in einer der andern Methoden die zeile 
readChars();// ist den dann wird der untere Teil nicht ausgeführt.
eingabe ist der wert der mit zahlen verglichen wird aber wenn ich das Programm so ausführe habe ich 4 Zahlen schon in der console stehen. wenn jede einzelne zahl mit der eingegebenen Zahl verglichen werden soll müßte die abfrage und der vergleich oben eingebaut werden und dann ist natürlich die Zeile readChars(); überflüssig
 
Schätzungsweise hat du am Ende einfach zu viel oder zu wenig schließende Klammern.
Ich würd einfach mal gucken welche Klammer wozu guckt, mir dies durch passende Einrückungen auch visuell klarmachen (oder halt so ein Eclipse Teil doer so nutzen wie es jeder hier fordert -.-)
Sicherlich hat es was mit der Klammerung zu tun oder so.

Nur meine Theorie:
Vermutlich hast du zu viele Klammern da am Ende, sodass die 1. klasse fertig ist und du aber noch ne klammer übr hast sodass der Kompiler sagt "Yo, zu der endklammer müsste doch eigentlich ne 2. klasse oder so gehören? denn nur ne weitere klasse darf nahc der beendeten ersten klasse folgen."


oder so.

aber guck einfach mal durch wie es mit der Anzahl an klammern aussieht


Mein gefühl sagt mir dass da locker 2-3 Klammern zu viel sind.
Aber das musst du selbser nachgucken
 

Neue Themen


Zurück
Oben