Ich habe ein Janken-Spiel in Java (CLI) gemacht.

Spezifikation

・ Goo: 1, Choki: 2, Par: 3. ・ Die Anzahl der Gegner beträgt 1 zu 1. ・ Die Anzahl der Schlachten beträgt eins.

Bedienbildschirm

janken.gif

Quellcode

Main.java Hauptklasse

package janken;

public class Main {
	public static void main(String[] args) {
		GameController gc = new GameController();
		gc.start();	//Spiel starten
		gc.end();	//Spiel ist aus
	}
}

GameController.java Janken Game Controller Klasse

package janken;

/**
 * GameController Class
 *Kontrolliere das Spiel
 * @author user
 *
 */
public class GameController {
	private Hand myHand;;
	private Hand opponentHand;
	private Rule rule;

	/**
	 *Konstrukteur
	 */
	public GameController() {
		this.rule = new Rule();
		this.myHand = new Hand();
		this.opponentHand = new Hand();
	}

	/**
	 * start method
	 *Starte das Spiel
	 */
	public void start() {
		System.out.println("Ich werde anfangen Janken zu spielen.");

		do {
			myHand.setHand();
			opponentHand.setRandomHand();
			rule.showHands(myHand, opponentHand);
		}while(rule.isDraw(myHand, opponentHand));

		rule.showResult(myHand, opponentHand);
	}

	/**
	 * end method
	 *Beende das Spiel
	 */
	public void end() {
		System.out.println("Ich werde die Stein-Papier-Schere fertigstellen.");

	}
}

Hand.java Janken's Handobjektklasse

package janken;
import java.util.InputMismatchException;
import java.util.Random;
import java.util.Scanner;

/**
 * Hand Class
 *Janken's Handobjektklasse
 * @author user
 *
 */
public class Hand {
	private int hand;

	/**
	 * setHand method
	 *Stellen Sie die Hände mit Standardeingabe ein
	 */
	public void setHand() {
		System.out.println("Bitte geben Sie Ihre Hand ein.");
		System.out.println("Goo: 1, Choki: 2, Par: 3");

		while(true) {
			try {
				Scanner scan = new Scanner(System.in);
				this.hand = scan.nextInt();
				break;
			}catch(InputMismatchException e){
				System.out.println("Bitte geben Sie einen Zahlenwert ein.");
			}
		}
	}

	/**
	 * setRandomHand method
	 *Stellen Sie zufällig die Hände ein
	 */
	public void setRandomHand() {
		Random random = new Random();
		this.hand = random.nextInt(3)+1;
	}

	/**
	 * handName method
	 *Gibt den Namen der Hand zurück
	 * @return
	 */
	public String handName() {
		String handName = null;

		if(this.hand == 1) handName = "Schmiere";
		if(this.hand == 2) handName = "Choki";
		if(this.hand == 3) handName = "Par";

		return handName;
	}

	/**
	 * hand method
	 *Gibt den Wert der Hand zurück
	 * @return
	 */
	public int hand() {
		return this.hand;
	}
}

Rule.java Klasse, die die Regeln von Janken definiert

package janken;

/**
 * Rule Class
 *Klasse, die die Regel definiert
 * @author user
 *
 */
public class Rule {
	/**
	 * showHands method
	 *Zeigen Sie Ihre eigene Hand und die Hand des anderen an.
	 * @param myHand
	 * @param opponetHand
	 */
	public void showHands(Hand myHand, Hand opponetHand) {
		System.out.print("Meine Hand ist"+ myHand.handName() +"。");
		System.out.print("Die Hand der anderen Partei"+ opponetHand.handName() +"。");
		System.out.println("");
	}

	/**
	 * isDraw method
	 *Richter Aiko
	 * @param myHand
	 * @param opponetHand
	 * @return
	 */
	public boolean isDraw(Hand myHand, Hand opponetHand) {
		if(myHand.hand() == opponetHand.hand()) {
			System.out.println("Aiko!");
			return true;
		}

		return false;
	}

	/**
	 * showResult method
	 *Zeigen Sie das Ergebnis eines Sieges oder einer Niederlage an
	 * @param myHand
	 * @param opponetHand
	 */
	public void showResult(Hand myHand, Hand opponetHand) {
		String result;
		// 1:Goo, 2: Choki, 3:Par
		if((myHand.hand() == 1 && opponetHand.hand() == 2) ||
		    (myHand.hand() == 2 && opponetHand.hand() == 3) ||
			(myHand.hand() == 3 && opponetHand.hand() == 1)) {
			result = "Sieg";
		}else {
			result = "Verlieren";
		}
		System.out.println("Ihre" + result + "ist.");
	}

}

Github https://github.com/TakumiKondo/janken

Recommended Posts

Ich habe ein Janken-Spiel in Java (CLI) gemacht.
Ich habe ein einfaches Berechnungsproblemspiel in Java gemacht
Ich habe ein Programm zur Beurteilung von Primzahlen in Java erstellt
Ich habe ein Roulette in Java gemacht.
Anfänger spielen Janken-Spiele in Java
Ich habe ein PDF mit Java erstellt.
Ich habe eine shopify App @java erstellt
Ich habe eine Anmerkung in Java gemacht.
Altersschätzspiel mit Java gemacht
[Anfänger] Ich habe ein Programm zum Verkauf von Kuchen in Java erstellt
Janken in Java
Ich habe eine Janken App mit Kotlin gemacht
Ich habe ein neues Java-Bereitstellungstool erstellt
Ich habe eine Janken App mit Android gemacht
Ich habe ein "Sunshine Ikezaki-Spiel" gemacht, das ich auf Twitter in Java gesehen habe.
Ich habe ein Diff-Tool für Java-Dateien erstellt
Janken App in Java
Janken Spiel Java-Praxis
Ich wollte (a == 1 && a == 2 && a == 3) in Java wahr machen
Ich habe ein Programm zur Beurteilung von Primzahlen in Java geschrieben
Ich habe eine Ruby-Erweiterungsbibliothek in C erstellt
Ich habe ein Primfaktorisierungsprogramm in Java geschrieben
Lerne Java mit Progate → Ich werde es erklären, weil ich selbst ein einfaches Spiel gemacht habe
Ich habe versucht, eine Clova-Fähigkeit in Java zu erstellen
Ich habe versucht, eine Anmeldefunktion mit Java zu erstellen
Ich habe im Frühjahr einen Restful-Server und -Client erstellt.
Was ich beim Erstellen eines Servers in Java gelernt habe
Ich habe einen Wrapper erstellt, der KNP von Java aus aufruft
Ich habe eine Chat-App erstellt.
Suchen Sie eine Teilmenge in Java
Ich habe versucht, Metaprogrammierung mit Java
Hat die Serverseite des Online-Kartenspiels gemacht ⑤
Ich habe die Serverseite des Online-Kartenspiels gemacht made
Ich habe die Serverseite des Online-Kartenspiels gemacht made
Ich wollte nur eine reaktive Eigenschaft in Java erstellen
Ich habe die Serverseite des Online-Kartenspiels gemacht made
Selbst in Java möchte ich true mit == 1 && a == 2 && a == 3 ausgeben
Ich habe versucht, in Java von einer Zeichenfolge in einen LocalDate-Typ zu konvertieren
Ich habe die Serverseite des Online-Kartenspiels gemacht made
Ich habe einen RESAS-API-Client in Java erstellt
Ich habe eine Docker-Datei erstellt, um Glassfish 5 mit Oracle Java zu starten
Ein Janken-Spiel für zwei Spieler mit Java, das zwischen Threads konkurriert
[Java] Ich habe versucht, ein Janken-Spiel zu erstellen, das Anfänger auf der Konsole ausführen können
Ich habe versucht, ein Programm in Java zu erstellen, das das Problem des Handlungsreisenden mit einem genetischen Algorithmus löst
3 Implementieren Sie einen einfachen Interpreter in Java
Ich habe mit Swing eine GUI erstellt
Ich habe Gordobachs Theorem in Java geschrieben
Ein einfaches Beispiel für Rückrufe in Java
Ich habe eine einfache Empfehlungsfunktion erstellt.
Ich habe versucht, JWT in Java zu verwenden
Bleiben Sie in einem Java Primer stecken
Ich habe eine passende App erstellt (Android App)
Beispielautomat mit Java
Ich habe ein Tool zur Generierung von package.xml erstellt.
[Android] Ich habe eine Schrittzähler-App erstellt.
Ich habe versucht, den Weihnachtsbaum in einem Lebensspiel zu beleuchten
Ich kann in IntelliJ keine Java-Klasse mit einem bestimmten Namen erstellen
[Anmerkung] Was ich in einem halben Jahr von unerfahrenen (Java) gelernt habe
[Anmerkung] Was ich in einem halben Jahr von unerfahrenen (Java) gelernt habe (1)
Ich habe kürzlich eine JS-App in der gemunkelten Dart-Sprache erstellt