ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
784
784
EMPFEHLEN
-
Habe mir vorgenommen ein kleine Tic Tac Toe Spiel zu programmieren und bis jetzt lief auch alles super... Nun bin ich an dem Punkt angekommen, an dem ich nach jeder Eingabe das 2D Array, das meine Spielfläche darstellt (3x3), nach einem möglichen Gewinn prüfen lassen muss.
Habe dazu eine Prüf-Methode geschrieben, die ein true zurück geben soll, falls eine der Gewinnkombinationen richtig ist. Im Methodenrumpf sollten vorerst nur die ersten 2 Zeilen des Spielfeldes geprüft werden, doch merkwürdigerweise bekomme ich, egal welches der 9 Felder ich mit einem char besetze direkt ein true zurück... Wie kann das sein? Vergleiche ich die Chars falsch miteinander ? Bitte um Rat
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
public class Feld { private char field [] [] = new char [3] [3]; public Feld(){ } public char[][] getFeld(){ return field; } public char getFeldSymb(int posX, int posY){ return field[posX][posY]; } public boolean pruefe(){ if(field[0][0] == field[0][1] && field[0][1] == field[0][2] || //prüft 1.Zeile field[1][0] == field[1][1] && field[1][1] == field[1][2]){ //prüft 1.Zeile return true; }else return false; } }
-
17.02.11 20:00 #2
- Registriert seit
- Jun 2009
- Beiträge
- 870
Ich vermute es liegt daran, dass auch das vergleichen von 2 "leeren" Array-Feldern true zurückgibt:
Auch dieser Code wird dir "true" ausgeben. Die "leeren" Felder des Char-Arrays werden automatisch initialisiert – und zwar alle mit dem selben Wert! (das macht Java so…)Code java:1 2
final char[] c = new char[2]; if(c[1] == c[0]) System.out.println("true");
Code bitte so einfügen: [java]System.out.println("Hallo");[/java] (Analog für andere Programmiersprachen)
hilfreich zu Java: Really Big Index, Java ist auch eine Insel Band 1 und Band 2.Code java:1
System.out.println("Hallo");
___________
Ubuntu Bug #1: Microsoft has a majority market share
Casecon: Projekt leiser Käse
-
Danke schon mal für deine Antwort. Gut, doch wie kann das vermieden werden? Ich möchte ja nur ein true zurück kriegen, wenn dort auch der selbe Char steht, nicht wenn das Feld frei ist . . . Jemand eine Idee?
EDIT: hat sich erledigt, danke
(vergleiche die Felder einfach mit X bzw O und nicht miteinander... Warum bin ich nicht vorher drauf gekommen?....)Geändert von Roman90 (17.02.11 um 20:51 Uhr)
Ähnliche Themen
-
Problem mit Array und Vergleich
Von PhoenixDH im Forum PHPAntworten: 15Letzter Beitrag: 22.04.09, 06:37 -
SimpleXML Vergleich mit Array
Von Metha im Forum PHPAntworten: 1Letzter Beitrag: 23.11.07, 16:50 -
Denkanstoß in Sachen Array-Vergleich benötigt
Von droni im Forum PHPAntworten: 10Letzter Beitrag: 12.02.07, 21:28 -
[VBS] 2 kleine VBS Probleme, String Vergleich, Array wiedergabe
Von berock im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 29.09.06, 13:48 -
Array-Vergleich
Von DeChecka im Forum C/C++Antworten: 5Letzter Beitrag: 13.07.05, 12:45





Zitieren
Login





