created GamefieldTest
changed datafields to 1 single ArrayList
This commit is contained in:
parent
72c4008186
commit
f775756925
|
@ -1,3 +1,5 @@
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Klasse um den Zustand der Felder 1-9 zu speichern und zu verändern, sowie das Spielfeld auszugeben.
|
* Klasse um den Zustand der Felder 1-9 zu speichern und zu verändern, sowie das Spielfeld auszugeben.
|
||||||
*/
|
*/
|
||||||
|
@ -6,7 +8,20 @@ public class Gamefield {
|
||||||
/**
|
/**
|
||||||
* Int Werte für die Felder 1-9 (0 --> noch nicht gesetzt, 1 --> gesetzt von Spieler 1, 2 --> gesetzt von Spieler 2)
|
* Int Werte für die Felder 1-9 (0 --> noch nicht gesetzt, 1 --> gesetzt von Spieler 1, 2 --> gesetzt von Spieler 2)
|
||||||
*/
|
*/
|
||||||
private int field1 = 0, field2 = 0, field3 = 0, field4 = 0, field5 = 0, field6 = 0, field7 = 0, field8 = 0, field9 = 0;
|
private ArrayList<Integer> fields;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Konstruktor der Klasse
|
||||||
|
* Felder 1-9 der Arraylist fields hinzufügen mit dem Wert 0.
|
||||||
|
*/
|
||||||
|
public Gamefield() {
|
||||||
|
fields = new ArrayList<>();
|
||||||
|
int count = 1;
|
||||||
|
while(count <= 9) {
|
||||||
|
fields.add(0);
|
||||||
|
count ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Methode um ein Fled zu setzen.
|
* Methode um ein Fled zu setzen.
|
||||||
|
@ -15,37 +30,15 @@ public class Gamefield {
|
||||||
* @return true --> das feld wurde gesetzt, false --> das feld wurde nicht gesetzt,das es nicht existiert oder bereits gsetzt war.
|
* @return true --> das feld wurde gesetzt, false --> das feld wurde nicht gesetzt,das es nicht existiert oder bereits gsetzt war.
|
||||||
*/
|
*/
|
||||||
public boolean setField(int field, int player) {
|
public boolean setField(int field, int player) {
|
||||||
if(field == 1 && field1 == 0) {
|
int index = 0;
|
||||||
field1 = player;
|
while(index <= 8) {
|
||||||
|
if(field == (index + 1) && fields.get(index) == 0) {
|
||||||
|
fields.set(index, player);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else if(field == 2 && field2 == 0) {
|
index ++;
|
||||||
field2 = player;
|
|
||||||
}
|
}
|
||||||
else if(field == 3 && field3 == 0) {
|
return false; //wenn das entsprechende Feld nicht existiert oder bereits gesetzt war.
|
||||||
field3 = player;
|
|
||||||
}
|
|
||||||
else if(field == 4 && field4 == 0) {
|
|
||||||
field4 = player;
|
|
||||||
}
|
|
||||||
else if(field == 5 && field5 == 0) {
|
|
||||||
field5 = player;
|
|
||||||
}
|
|
||||||
else if(field == 6 && field6 == 0) {
|
|
||||||
field6 = player;
|
|
||||||
}
|
|
||||||
else if(field == 7 && field7 == 0) {
|
|
||||||
field7 = player;
|
|
||||||
}
|
|
||||||
else if(field == 8 && field8 == 0) {
|
|
||||||
field8 = player;
|
|
||||||
}
|
|
||||||
else if(field == 9 && field9 == 0) {
|
|
||||||
field9 = player;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return false; //Wenn das Feld nicht existiert oder bereits gesetzt wurde.
|
|
||||||
}
|
|
||||||
return true; //Wenn das Feld gesetzt wurde.
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -71,45 +64,25 @@ public class Gamefield {
|
||||||
* @return Der Spieler der das Feld gesetzt hat oder 0 wenn es noch nicht gesetz wurde
|
* @return Der Spieler der das Feld gesetzt hat oder 0 wenn es noch nicht gesetz wurde
|
||||||
*/
|
*/
|
||||||
public int getField(int field) {
|
public int getField(int field) {
|
||||||
if(field == 1) {
|
int index = 0;
|
||||||
return field1;
|
while (index <= 8) {
|
||||||
|
if (index == (field - 1)) {
|
||||||
|
return fields.get(index);
|
||||||
}
|
}
|
||||||
else if(field == 2) {
|
index ++;
|
||||||
return field2;
|
|
||||||
}
|
}
|
||||||
else if(field == 3) {
|
return -1; //if field doesn't exist.
|
||||||
return field3;
|
|
||||||
}
|
|
||||||
else if(field == 4) {
|
|
||||||
return field4;
|
|
||||||
}
|
|
||||||
else if(field == 5) {
|
|
||||||
return field5;
|
|
||||||
}
|
|
||||||
else if(field == 6) {
|
|
||||||
return field6;
|
|
||||||
}
|
|
||||||
else if(field == 7) {
|
|
||||||
return field7;
|
|
||||||
}
|
|
||||||
else if(field == 8) {
|
|
||||||
return field8;
|
|
||||||
}
|
|
||||||
else if(field == 9) {
|
|
||||||
return field9;
|
|
||||||
}
|
|
||||||
return -1; //wenn das feld nicht existiert
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Methode um das Spielfeld auszugeben.
|
* Methode um das Spielfeld auszugeben.
|
||||||
*/
|
*/
|
||||||
public void outputField() {
|
public void outputField() {
|
||||||
System.out.println(getSymbol(field1) + "|" + getSymbol(field2) + "|" + getSymbol(field3));
|
System.out.println(getSymbol(fields.get(0)) + "|" + getSymbol(fields.get(1)) + "|" + getSymbol(fields.get(2)));
|
||||||
System.out.println("-----");
|
System.out.println("-----");
|
||||||
System.out.println(getSymbol(field4) + "|" + getSymbol(field5) + "|" + getSymbol(field6));
|
System.out.println(getSymbol(fields.get(3)) + "|" + getSymbol(fields.get(4)) + "|" + getSymbol(fields.get(5)));
|
||||||
System.out.println("-----");
|
System.out.println("-----");
|
||||||
System.out.println(getSymbol(field7) + "|" + getSymbol(field8) + "|" + getSymbol(field9));
|
System.out.println(getSymbol(fields.get(6)) + "|" + getSymbol(fields.get(7)) + "|" + getSymbol(fields.get(8)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -128,5 +101,4 @@ public class Gamefield {
|
||||||
return " ";
|
return " ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
class GamefieldTest {
|
||||||
|
|
||||||
|
private Gamefield gamefield = new Gamefield();
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void setField() {
|
||||||
|
gamefield.setField(2, 1);
|
||||||
|
gamefield.setField(4, 2);
|
||||||
|
|
||||||
|
assertEquals(0, gamefield.getField(1));
|
||||||
|
assertEquals(1, gamefield.getField(2));
|
||||||
|
assertEquals(0, gamefield.getField(3));
|
||||||
|
assertEquals(2, gamefield.getField(4));
|
||||||
|
assertEquals(0, gamefield.getField(5));
|
||||||
|
assertEquals(0, gamefield.getField(6));
|
||||||
|
assertEquals(0, gamefield.getField(7));
|
||||||
|
assertEquals(0, gamefield.getField(8));
|
||||||
|
assertEquals(0, gamefield.getField(9));
|
||||||
|
|
||||||
|
assertEquals(2, gamefield.countSetFields());
|
||||||
|
gamefield.outputField();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void getField() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void outputField() {
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue