Este es un proyecto favorito en el que estoy trabajando en Java para comprender mejor un programa completo de Java, y espero que sea mi primer intento de hacer mi propia GUI.
Aparte de eso, tengo una pregunta sobre cómo crear una mano de cartas a partir de mi código actual. Tal como está, tengo una clase principal llamada DummyRummy
, una clase para crear cartas, una clase que crea un mazo de cartas estándar (que incluye Jokers y “baraja” el mazo cuando se crea un nuevo mazo), y una clase PlayerHands
. Estoy trabajando estrictamente con ArrayList
s para todo el código, y la clase PlayersHands
debería devolver dos ArrayList
s que se utilizarán. Sin embargo, cuando intento llamar al método PlayerHands()
en public static void main()
, PlayerHands
no puede ubicarse por alguna razón …
Aquí está el código para PlayerHands
:
paquete dummyrummy;
PlayerHands de clase pública {
tarjeta privada [] playerOneCards;
tarjeta privada [] playerTwoCards;
valor privado int [];
- ¿Cuál es el mejor juego mental en el mercado de Android?
- ¿Las compañías de juegos como EA compran franquicias y las hunden para reducir deliberadamente el conjunto de juegos que compiten por el dinero de los clientes?
- Cuando los desarrolladores hacen juegos, ¿solo hacen código o hacen personajes como una especie de creador de 3D?
- ¿Cuál es el mejor juego multijugador para dispositivos móviles Android?
- ¿Cómo sería posible tener una vida exitosa y, al mismo tiempo, jugar videojuegos durante 4-5 horas al día?
PlayerHands (mazo d, int ronda)
{
valor = nuevo int [ronda + 3];
playerOneCards = nueva carta [ronda + 2];
playerTwoCards = nueva carta [ronda + 2];
// (ronda + 2) es el tamaño de la mano en un momento dado
para (int x = 0; x <round + 3; x ++)
{
playerOneCards [x] = d.drawFromDeck (); // llena una mano.
playerTwoCards [x] = d.drawFromDeck (); // se llena de segunda mano.
}
}
}
Aquí está la clase DummyRummy
.
paquete dummyrummy;
import java.util. *;
clase pública DummyRummy {
public static void main (String [] args) {
prueba de cubierta
testDeck = nueva plataforma ();
System.out.println (testDeck.getTotalCards ());
System.out.println (testDeck.getClass ());
int ronda = 1;
PlayerHands (testDeck, round); // Aquí es donde ocurre el error
} // Fin de los argumentos
} // Fin de la clase DummyRummy
Aquí está la clase de Card
:
paquete dummyrummy;
Tarjeta de clase pública
{
rango corto privado, traje;
Cadena estática privada [] trajes = {“Corazones”, “Picas”, “Diamantes”, “Clubes”, “Joker”};
Cadena estática privada [] rangos = {“As”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “10”, “Jack “, “Reina rey” };
Private static String [] jokers = {“Joker”, “Joker”};
Cadena estática privada [] ranks2 = {“0”, “0”};
public static String rankAsString (int __rank) {
if (__rank! = 0) {
volver rangos [__ rango];
} // Fin de la declaración if
volver rangos2 [__ rango];
} // Fin de la clase rankAsString
Tarjeta (palo corto, rango corto)
{
this.rank = rango;
this.suit = traje;
} // Fin del inicializador de la tarjeta
public @Override String toString ()
{
if (palo == 5) {
devolver “Joker”;
} // Fin de la declaración if que llama comodines
if (rango == 0) {
devolver “Joker”;
}
regresar rangos [rango] + “de” + trajes [traje];
} // Fin del método toString
public short getRank () {
rango de retorno;
} // Fin del método getRank
getSuit corto público () {
traje de regreso;
} // Fin del método getSuit
} // Fin de la tarjeta
Y finalmente, aquí está la clase deck()
:
paquete dummyrummy;
import java.util.Random;
import java.util.ArrayList;
cubierta de clase pública {
tarjetas privadas ArrayList ;
cubierta()
{
tarjetas = nueva ArrayList ();
int index_1, index_2;
Generador aleatorio = nuevo aleatorio ();
Tarjeta de temperatura;
short jokerSuit = 5;
jokerRank corto = 0;
cards.add (nueva tarjeta (jokerSuit, jokerRank));
cards.add (nueva tarjeta (jokerSuit, jokerRank));
para (traje corto = 0; traje <= 3; traje ++)
{
para (rango corto = 0; rango <= 12; rango ++)
{
cards.add (nueva carta (palo, rango));
}
} // Fin del ciclo for
int deckSize = 54;
para (int i = 0; i <1000; i ++)
{
index_1 = generator.nextInt (cards.size ());
index_2 = generator.nextInt (cards.size ());
temp = cards.get (index_2);
cards.set (index_2, cards.get (index_1));
tarjetas.set (index_1, temp);
} // Fin del ciclo for
} // Fin del mazo ()
Tarjeta pública drawFromDeck ()
{
/ *
* Este método elimina la carta superior de la baraja ya barajada.
* El siguiente paso a seguir con esta clase es colocar la tarjeta robada en otra
* matriz que representa la mano de un jugador.
* Esto tomará dos matrices, y se debe invocar dependiendo de qué jugador ‘dibujaDeDeck’.
* /
return cards.remove (0);
} // Fin de drawFromDeck ()
public int getTotalCards ()
{
return cards.size ();
} // Fin de getTotalCards ()
} // Fin del mazo de clases
Este es el programa de Java para juegos de cartas y Rummy Passion es el mejor sitio web para jugar juegos de cartas.
Gracias