Bitte Hilfe für Funktionalität eines Sudokus

Bahnkaktus

Mitglied
Hallo,

im Zuge eines Informatik-Schulprojekts programmiere ich derzeit ein Sudoku auf Java-Awt-Basis.
Derzeit sind testweise erstmal nur 2 Rätsel komplett enthalten, die Anzahl wird aber noch erhöht.

Nach Klick auf den Start-Button, der ein Rätsel anzeigen lässt (nicht über einen Algorhythmus generiert), wird eine Zufallszahl (Variable v1) erzeugt. Mittels einer if-Klausel wird dann ein Rätsel angezeigt (v1 == 1 fürs erste Rätsel, v1 == 2 fürs zweite Rätsel usw.).

Wenn dann ein Rätsel komplett durch den Nutzer eingegeben wurde, kann über den Button "Eingabe prüfen" die Richtigkeit unter die Lupe genommen werden. Die zwei weiteren Buttons dienen lediglich zur kompletten Lösungsanzeige, falls der Nutzer zeitnah die Auflösung erfahren möchte, sowie zur Leerung aller Textfelder (ein Sudoku-Zahlenfeld = ein Textfeld).

Bei der Prüfung auf die Richtigkeit ergibt sich ein großes Problem, bei dem ich gerade rätsele, woran es liegen könnte.
Bei if (v1==1) gibt mir der Java-Editor eine Fehlermeldung aus, dass trotz vollständiger Eingaben (alle Textfelder mit einer Integer-Zahl gefüllt) ein leerer String eingegeben wurde.
Hier die Fehlermeldung im Ganzen:

Code:
Exception in thread "AWT-EventQueue-1" java.lang.NumberFormatException: null
	at java.lang.Integer.parseInt(Integer.java:417)
	at java.lang.Integer.parseInt(Integer.java:499)
	at Sudoku$2.actionPerformed(Sudoku.java:624)
	at java.awt.Button.processActionEvent(Button.java:392)
	at java.awt.Button.processEvent(Button.java:360)
	at java.awt.Component.dispatchEventImpl(Component.java:4630)
	at java.awt.Component.dispatchEvent(Component.java:4460)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Bei if (v1==2) funktioniert der Prüf-Button fehlerfrei und lässt über einen ActionListener die Textfelder je nach Richtigkeit farbig markieren.

Auch nach Löschen aller Texteingaben und der erneuten Eingabe bei einem der beiden Rätsel wird diese Fehlermeldung durch den Editor ausgegeben. Ist es hier evtl. möglich, dass die eingegebenen Zahlen im Hintergrund verbleiben und die leeren Strings die Integer-Werte nur an der Oberfläche verschwinden lassen?

Zur genauen Nachvollziehbarkeit habe ich als Anhang hier die Datei im zip-Archiv angehangen.

Ich freue mich auf eure Hilfen und Ratschläge! :)

Viele Grüße!
 

Anhänge

  • Sudoku.zip
    7 KB · Aufrufe: 7
Zuletzt bearbeitet:
G

Gast2

Gast
Puh, das ist mal nen Code. Schau dir bitte Arrays und Listen an, damit lässt sich der ganze Code auf nen Minimum an Komplexität reduzieren.

Zu deinem Fehler:
Der tritt in Zeile 624 ind
Code:
Sudoku.java
auf. Deine hochgeladene Datei hat aber nicht soviele Zeilen, da kann man also nichts zu sagen.
 

Bahnkaktus

Mitglied
Sorry, die hochgeladene Datei war eine veraltete. Die neue ist nun online. :)

Zu Arrays und Listen müsste ich mich erst einmal einarbeiten. Vielleicht bekomme ich das bald noch auf die Reihe. ;)
 
G

Gast2

Gast
Java:
  TextField p1_1,p1_2,p1_3,p1_4,p1_5,p1_6,p1_7,p1_8,p1_9,
  p2_1,p2_2,p2_3,p2_4,p2_5,p2_6,p2_7,p2_8,p2_9,
  p3_1,p3_2,p3_3,p3_4,p3_5,p3_6,p3_7,p3_8,p3_9,
  p4_1,p4_2,p4_3,p4_4,p4_5,p4_6,p4_7,p4_8,p4_9,
  p5_1,p5_2,p5_3,p5_4,p5_5,p5_6,p5_7,p5_8,p5_9,
  p6_1,p6_2,p6_3,p6_4,p6_5,p6_6,p6_7,p6_8,p6_9,
  p7_1,p7_2,p7_3,p7_4,p7_5,p7_6,p7_7,p7_8,p7_9,
  p8_1,p8_2,p8_3,p8_4,p8_5,p8_6,p8_7,p8_8,p8_9,
  p9_1,p9_2,p9_3,p9_4,p9_5,p9_6,p9_7,p9_8,p9_9;
  
  Button StartB,PruefB,LoesB,LoeschB;
  
  TextArea StatusTA;
  
  String p1_1s,p1_2s,p1_3s,p1_4s,p1_5s,p1_6s,p1_7s,p1_8s,p1_9s,
  p2_1s,p2_2s,p2_3s,p2_4s,p2_5s,p2_6s,p2_7s,p2_8s,p2_9s,
  p3_1s,p3_2s,p3_3s,p3_4s,p3_5s,p3_6s,p3_7s,p3_8s,p3_9s,
  p4_1s,p4_2s,p4_3s,p4_4s,p4_5s,p4_6s,p4_7s,p4_8s,p4_9s,
  p5_1s,p5_2s,p5_3s,p5_4s,p5_5s,p5_6s,p5_7s,p5_8s,p5_9s,
  p6_1s,p6_2s,p6_3s,p6_4s,p6_5s,p6_6s,p6_7s,p6_8s,p6_9s,
  p7_1s,p7_2s,p7_3s,p7_4s,p7_5s,p7_6s,p7_7s,p7_8s,p7_9s,
  p8_1s,p8_2s,p8_3s,p8_4s,p8_5s,p8_6s,p8_7s,p8_8s,p8_9s,
  p9_1s,p9_2s,p9_3s,p9_4s,p9_5s,p9_6s,p9_7s,p9_8s,p9_9s;
  
  int v1,p1_1i,p1_2i,p1_3i,p1_4i,p1_5i,p1_6i,p1_7i,p1_8i,p1_9i,
  p2_1i,p2_2i,p2_3i,p2_4i,p2_5i,p2_6i,p2_7i,p2_8i,p2_9i,
  p3_1i,p3_2i,p3_3i,p3_4i,p3_5i,p3_6i,p3_7i,p3_8i,p3_9i,
  p4_1i,p4_2i,p4_3i,p4_4i,p4_5i,p4_6i,p4_7i,p4_8i,p4_9i,
  p5_1i,p5_2i,p5_3i,p5_4i,p5_5i,p5_6i,p5_7i,p5_8i,p5_9i,
  p6_1i,p6_2i,p6_3i,p6_4i,p6_5i,p6_6i,p6_7i,p6_8i,p6_9i,
  p7_1i,p7_2i,p7_3i,p7_4i,p7_5i,p7_6i,p7_7i,p7_8i,p7_9i,
  p8_1i,p8_2i,p8_3i,p8_4i,p8_5i,p8_6i,p8_7i,p8_8i,p8_9i,
  p9_1i,p9_2i,p9_3i,p9_4i,p9_5i,p9_6i,p9_7i,p9_8i,p9_9i;

Schau dir bitte mal Arrays/Listen an, wirklich :toll:

Das Problem ist folgende Zeile:
Java:
p7_6i = Integer.parseInt(p7_6s);
Code:
p7_6s
ist noch null, es wurde kein Wert zugewiesen. Warum das so ist, keine Ahnung, durch den Code blickst wohl nur noch du durch.
 

Bahnkaktus

Mitglied
Ich habe den Fehler gerade gefunden. Tippfehler meinerseits. :rtfm:

Gibt es denn einen bestimmten Befehl für den Lösch-Button, der es erlaubt, alle Felder gleichzeitig wieder auf weiß bzw. grau zurückzufärben, sodass es überflüssig wird, für jedes einzelne Textfeld den Farbbefehl zuzuweisen?
 

Michael...

Top Contributor
durch den Code blickst wohl nur noch du durch.
Nicht mal das, daher auch die NullPointerException: Schreibfehler bzw. einen Sprung in der Verwendung der String Variablen. Zuvor wird der Inhalt des Textfeldes in
Code:
p7_5s
geparst wird aber
Code:
p7_6s
. Der Code hat aber wirklich kaum etwas mit Programmierung zu tun. Und mit OOP schon mal gar nicht ;-)
 
G

Gast2

Gast
Wenn du deine Felder in einem Array hast kannst du mit ner Schleife über das Array laufen und den Befehl für jedes Feld aufrufen.
 

Bahnkaktus

Mitglied
Nicht mal das, daher auch die NullPointerException: Schreibfehler bzw. einen Sprung in der Verwendung der String Variablen. Zuvor wird der Inhalt des Textfeldes in
Code:
p7_5s
geparst wird aber
Code:
p7_6s
. Der Code hat aber wirklich kaum etwas mit Programmierung zu tun. Und mit OOP schon mal gar nicht ;-)

Ziel bei der Programmierung ist lediglich eine einfache Funktionalität des Programms. In der Schule wurde es uns so umständlich vermittelt. Da auch dazu eine kleine Vorstellung ansteht, nützt es mir nichts, irgendwelche, für einen Laien komplizierten Zeilen aus dem Internet nachzuvollziehen. Ich muss wissen, wie das Programm arbeitet. ;)
 

Kalle_Mett

Mitglied
Ah ja, hat schon wer geantwortet mitlerweile. Sonst versuch es doch mal der Übersicht halber mit doppelten Arrays, den ersten Eintrag für die Zeile den Zweiten für die Spalte, also so: Integer[Zeile][Spalte] und dann kannst du das mit zwei verschachtelten Schleifen zuweisen.
Außerdem nehme ich an, dass du mitlerweile in deinem aktuellem File schon mitbekommen hast das hierbei ne Zahl zwischen 1 und 10 rauskommt. Wunderte mich nämlich da das Programm nur bei jedem dritten Klick in etwa funktionierte.
double d1 = 1+10*Math.random();
v1 = (int) d1;
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Stack und Queue in Aktion (Bitte Hilfe für die Klausur) Java Basics - Anfänger-Themen 7
L Brauche bitte dringend Hilfe für Klausur Java Basics - Anfänger-Themen 8
D Bitte um Hilfe muss es schnellstmöglich erledigen Java Basics - Anfänger-Themen 15
I Bitte um Hilfe zu unterstehenden Code Java Basics - Anfänger-Themen 6
M Bitte um Hilfe bei 2DArrays Java Basics - Anfänger-Themen 8
D Abrechnung bitte um hilfe Java Basics - Anfänger-Themen 25
J Doppelt verkette Liste ich bitte um Hilfe Java Basics - Anfänger-Themen 4
J Java List, Bitte um Hilfe Java Basics - Anfänger-Themen 15
J Java List, bitte um Hilfe Java Basics - Anfänger-Themen 3
pry bitte Hilfe beim Kreditrechner objektorientiert Java Basics - Anfänger-Themen 6
marcooooo einmal noch schnell hilfe bitte:/ Java Basics - Anfänger-Themen 2
I Methoden char Array Aufgabe (bitte hierbei um Hilfe) Java Basics - Anfänger-Themen 3
ZH1896ZH OOP Verstehe nicht was der Hinweis bedeutet, bitte um Hilfe! Java Basics - Anfänger-Themen 2
B BITTE!! Ich brauche dringende Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 17
S Bitte Hilfe zu Fehlermeldung am Handy Java Basics - Anfänger-Themen 2
I Do-While / Kalkulator / Bitte um Hilfe Java Basics - Anfänger-Themen 9
M Bitte um Hilfe bei Quellcode (Rekursion) Java Basics - Anfänger-Themen 6
F (Eclipse) Beim importieren etwas fehlerhaft bitte um Hilfe :) Java Basics - Anfänger-Themen 3
T Bitte um Hilfe Java Basics - Anfänger-Themen 9
D Arraylisten sortieren bitte um Hilfe Java Basics - Anfänger-Themen 4
J Bitte Hilfe Java Basics - Anfänger-Themen 4
T Bitte um Hilfe bei Aufgabe: Long zahl = Long.parseLong(args [0]); Java Basics - Anfänger-Themen 3
D Bitte um Hilfe bei "error: package com.apple.eawt does not exist import com.apple.eawt.*;" Java Basics - Anfänger-Themen 1
P <identifier> expected Fehler bitte um Hilfe Java Basics - Anfänger-Themen 5
K NullPointerException wird geworfen, bitte um Hilfe! Java Basics - Anfänger-Themen 7
S Variablen Hilfe bitte Java Basics - Anfänger-Themen 6
J Ich bitte DRINGEND um Hilfe!!! Java Basics - Anfänger-Themen 16
Q Importieren meiner Boundary? Bitte Hilfe Java Basics - Anfänger-Themen 3
CyberFish initialisieren, obwohl es gemacht wurde! Bitte um Hilfe Java Basics - Anfänger-Themen 10
H Bitte um Hilfe von Profis. Java Basics - Anfänger-Themen 5
S Klassen Formel zur Berechnung .... Bitte um Hilfe Java Basics - Anfänger-Themen 7
J Probleme bei kompilieren ... Bitte um Hilfe Java Basics - Anfänger-Themen 27
P Bitte um hilfe bei einfachem Rechner Java Basics - Anfänger-Themen 7
G Brauche bitte Hilfe, bei umgekehrter Ausgabe!! Java Basics - Anfänger-Themen 6
U finde fehler nicht! bitte um hilfe Java Basics - Anfänger-Themen 8
M Problem: code too large - bitte um Hilfe Java Basics - Anfänger-Themen 12
B Java und Javac funktionieren nicht - bitte hilfe Java Basics - Anfänger-Themen 5
3 Bitte um Hilfe bei Lösung einer Aufgabe Java Basics - Anfänger-Themen 16
R Jave Problem... bitte um Hilfe!! Java Basics - Anfänger-Themen 6
S Java problem, bitte um hilfe! Java Basics - Anfänger-Themen 9
B Bitte um Hilfe es geht um Array + Punkte wie Dreieck,Fläche etc. Java Basics - Anfänger-Themen 12
N verständniss problem bitte um hilfe Java Basics - Anfänger-Themen 3
B Monat und Jahr bitte um Hilfe Java Basics - Anfänger-Themen 8
D Java Problem bitte um hilfe Java Basics - Anfänger-Themen 4
S BITTE UM HILFE: Unterschied Deklaration und Signatur einer Methode Java Basics - Anfänger-Themen 3
S BITTE UM HILFE HASHTABLE/import java.util.Hashtable in Ecplipse Java Basics - Anfänger-Themen 12
T Problem mit Aufgabe..bitte um Hilfe Java Basics - Anfänger-Themen 8
S Bitte um Hilfe beim unsortierten Binärbaum!! Java Basics - Anfänger-Themen 6
N Bitte um Hilfe - zyklisch Existenz einer Datei prüfen Java Basics - Anfänger-Themen 21
G ein kleines java prog - hat aber einen fehler-bitte um hilfe Java Basics - Anfänger-Themen 5
G Verstehe das nicht. bitte um hilfe Java Basics - Anfänger-Themen 13
L Bitte um Hilfe: getRuntime().exec() Java Basics - Anfänger-Themen 12
H BITTE SCHNELLE HILFE - VERZEICHNISSE DURCHGEHEN Java Basics - Anfänger-Themen 2
K Hilfe beim starten eines Programms! Bitte helfen. Java Basics - Anfänger-Themen 8
P JTable Problem ! Bitte um Hilfe ! Java Basics - Anfänger-Themen 8
G hilfe bitte gebt mir wenigstens grundwissen! :( Java Basics - Anfänger-Themen 4
E Bitte Hilfe Taschenrechner! Java Basics - Anfänger-Themen 13
P Habe da ein Problem mit Arrays! Bitte um Hilfe Java Basics - Anfänger-Themen 2
S Ausgabe funktioniert nicht! Bitte um Hilfe! Java Basics - Anfänger-Themen 16
S Buffer - charArray bitte um Hilfe! Java Basics - Anfänger-Themen 4
D Java Aufgabe fürs Studium (bitte um Hilfe) Java Basics - Anfänger-Themen 8
C Compiler-Fehler - bitte um Hilfe Java Basics - Anfänger-Themen 20
C Bitte Hilfe bei Übung zu Verzweigungen Java Basics - Anfänger-Themen 16
E Bitte um Hilfe! Zugriff auf "veränderte" Variablen Java Basics - Anfänger-Themen 2
ineedhelpinjava OOP Bitte wichtig Java Basics - Anfänger-Themen 6
G Bitte meinen Account löschen Java Basics - Anfänger-Themen 1
Vivien Bitte um Optimierungsvorschläge / Verbesserungsvorschläge / allgemeines Feedback Java Basics - Anfänger-Themen 8
F Methoden Bitte Helft mir meinen Fehler zu finden. Möchte in diesem Bankenprogramm durch die Konsoleneingabe auswählen welches Konto reduziert und welches erhö Java Basics - Anfänger-Themen 17
P Bitte Hinweise zu folgendem "Klassenproblem" Java Basics - Anfänger-Themen 3
A Erste Schritte Bitte helfen sie mir diese Programm zu schreiben Java Basics - Anfänger-Themen 12
B MVC Struktur mit mehreren Szenen - wer schaut mal bitte drüber? Java Basics - Anfänger-Themen 2
P Erste Schritte Bitte ein paar Erklärungen zu meinem Code Java Basics - Anfänger-Themen 6
W FileReader - Bitte um Erklärung Java Basics - Anfänger-Themen 7
V Memory Logik Problem/Denkblockade, bitte helft Java Basics - Anfänger-Themen 1
J Bitte um Erklärung Java Basics - Anfänger-Themen 4
A GUI- Allgemeines Problem (Bitte helfen) Java Basics - Anfänger-Themen 15
C Polymorphie - Erklärung bitte Java Basics - Anfänger-Themen 5
M Quadrat zeichnen einfach bitte! Java Basics - Anfänger-Themen 2
F Bitte mal Zusammenhänge der Klassen erklären Java Basics - Anfänger-Themen 8
J Kann mir bitte mal jemand diese Codes erklären? Java Basics - Anfänger-Themen 19
J Threading-Aufgabe. Totale Noob Fragen, aber bitte trotzdem beantworten ;) Java Basics - Anfänger-Themen 7
O Rundungsfehler bitte erklären! Java Basics - Anfänger-Themen 4
M Erklärung Code Mergesort Bitte Java Basics - Anfänger-Themen 3
N While Schleife Erklärung Bitte Java Basics - Anfänger-Themen 3
Z Erste Schritte Bitte helft mir dringend!! Java Basics - Anfänger-Themen 3
T Unit tests fehlerhaft bitte um hiiiiilfe :D Java Basics - Anfänger-Themen 1
T Eine kurze frage vor der prüfung bitte. Java Basics - Anfänger-Themen 5
H Methoden Bitte um Erklärung der askString-Methode Java Basics - Anfänger-Themen 15
O Erste Schritte Aller Anfang ist schwer ! Bitte um Unterstützung Java Basics - Anfänger-Themen 6
G Bitte um Erklärung dieser einer Zeile Java Basics - Anfänger-Themen 5
G Input/Output FilenameFilter aber bitte keine Unterordner Java Basics - Anfänger-Themen 5
J Vererbung Anfänger Programm bitte um Kritik&Anregungen Java Basics - Anfänger-Themen 21
N Bitte Java Basics - Anfänger-Themen 2
D ???:L Bitte einmal mit drüber nachdenken Java Basics - Anfänger-Themen 5
eLogic DownloadManager - Bitte helft mir Java Basics - Anfänger-Themen 7
R Vererbung Bitte um Erklärung - Instanzvariablen Java Basics - Anfänger-Themen 8
U Bitte Helfen kleines Spiel Java Basics - Anfänger-Themen 9
P Bitte helft mir Java Basics - Anfänger-Themen 3
M Aus CSV-Datei lesen und anzeigen (bitte schnell um Antwort) Java Basics - Anfänger-Themen 6
C Bitte kurzes Feedback - JavaVersionen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben