Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

202
Vistas
Simple Tic Tac Toe usando Groovy (el índice en la declaración de cambio no cambia el elemento en la matriz doble)

Soy bastante nuevo en Groovy y he estado tratando de hacer un juego simple de tres en raya. Como no hay recursos relacionados con Groovy, he estado siguiendo un proyecto Java y tratando de convertirlo en Groovy. Hasta ahora todo va bien, pero los datos en mi declaración de cambio no reemplazan el espacio en la matriz doble con una X. Intenté depurarlo pero no puedo encontrar el problema. A continuación se muestra el código:

 `def gameBoard = [[' ','|',' ','|',' '], ['-','+','-','+','-'], [' ','|',' ','|',' '], ['-','+','-','+','-'], [' ','|',' ','|',' ']] as char[][] //user needs to put a piece in one of the spaces, can do this my doing indexes but easier to number boxes 1-9 println "Enter your placement 1-9" def input = System.in.newReader().readLine() println input //changing a symbol (changing the space characters with our own symbol) switch(input){ //first row, first char case 1: gameBoard[0][0] = 'X' break case 2: gameBoard[0][2] = 'X' break case 3: gameBoard[0][4] = 'X' break case 4: gameBoard[2][0] = 'X' break case 5: gameBoard[2][2] = 'X' break case 6: gameBoard[2][4] = 'X' break case 7: gameBoard[4][0] = 'X' break case 8: gameBoard[4][2] = 'X' break case 9: gameBoard[4][4] = 'X' break } printGameBoard(gameBoard) //print gameBoard[0][1] static def printGameBoard( gameBoard){ //print out the game board using 2 for loops //for each array(row) inside of the game board, for each char (c) inside of the row, we are going to print out the symbol for(char[] row : gameBoard){ for(char c : row){ print c } println() } } `
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Sistema.en.nuevoLector(). readLine() devuelve una cadena y, en cambio/caso, intenta compararlo con int.

simple agregar as int debería resolver su problema

 def input = System.in.newReader().readLine() as int
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda