Querendo converter int para String

Alguém tem alguma sugestão?

qual a diferença dessa matriz pronta?

Mas você pode converter com:
String.valueOf(int)

1 curtida

Matriz pronta vai parar o while na classe principal.
Obrigada, vou tentar aqui.

não estou fazendo certo.
Pode me mostrar? eu fiz assim: matrizPronta[i][j] =String.valueof(int)cont;

Olá, boa tarde!

tente assim:

matrizPronta[i][j] =String.valueof(cont);

Deste jeito da ruim.

Perdão,

matrizPronta[i][j] = Integer.toString(cont)

1 curtida

Exemplo:

    int i = 7;

    String a = Integer.toString(i);

    System.out.println("Valor convertido: " + a);
1 curtida

deu certo, porém os outras variáveis da matriz pronta ainda estão com erro porque fora do método.
Principalmente matrizPronta[3][3] = 0;

package jogoquebracabeca;

import java.util.Random;
import java.util.Scanner;

/*

  • To change this license header, choose License Headers in Project Properties.

  • To change this template file, choose Tools | Templates

  • and open the template in the editor.
    */
    public class Tabuleiro extends Peca {

    private int[][] matriz = new int[4][4];
    private String [][] matrizPronta = new String[4][4];
    private int[] posicaov = new int[2];
    private int[] posicaop = new int[2];
    private int escolha;
    Random rad = new Random();

    public void criartabuleiro() {
    int cont = 1;
    for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {
    matriz[i][j] = cont;
    matrizPronta[i][j] = Integer.toString(cont);
    cont++;
    }
    }
    matriz[3][3] = 0;
    matrizPronta[3][3] = 0;
    }

    public int[][] getMatriz() {
    return matriz;
    }

    public int[][] getMatrizPronta() {
    return matrizPronta;
    }

    public void embaralhar() {
    int index1;
    int index2;
    int aux;
    int cont = 1;
    for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {

             if (j == 3 && i == 3) {
                 break;
             }
             index1 = rad.nextInt(3);
             index2 = rad.nextInt(3);
             aux = matriz[index1][index2];
             matriz[index1][index2] = matriz[i][j];
             matriz[i][j] = aux;
    
         }
    
     }
    

    }

    public void imprime() {
    for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {
    System.out.print(" " + matriz[i][j]);
    }
    System.out.println("");
    }
    }

    public void mover() {
    posicaovazia();
    switch (escolha) {
    case 1://Mover para cima
    {
    if (verificacaomov(posicaov[0], posicaov[1], escolha)) {
    int aux = matriz[posicaov[0]][posicaov[1]];
    matriz[posicaov[0]][posicaov[1]] = matriz[posicaov[0] - 1][posicaov[1]];
    matriz[posicaov[0] - 1][posicaov[1]] = aux;

             }
             break;
         }
         case 2://Mover para baixo
         {
             if (verificacaomov(posicaov[0], posicaov[1], escolha)) {
                 int aux = matriz[posicaov[0]][posicaov[1]];
                 matriz[posicaov[0]][posicaov[1]] = matriz[posicaov[0] + 1][posicaov[1]];
                 matriz[posicaov[0] + 1][posicaov[1]] = aux;
             }
             break;
         }
         case 3://Mover para esquerda
         {
             if (verificacaomov(posicaov[0], posicaov[1], escolha)) {
                 int aux = matriz[posicaov[0]][posicaov[1]];
                 matriz[posicaov[0]][posicaov[1]] = matriz[posicaov[0]][posicaov[1] - 1];
                 matriz[posicaov[0]][posicaov[1] - 1] = aux;
             }
             break;
         }
         case 4://Mover para direita
         {
             if (verificacaomov(posicaov[0], posicaov[1], escolha)) {
                 int aux = matriz[posicaov[0]][posicaov[1]];
                 matriz[posicaov[0]][posicaov[1]] = matriz[posicaov[0]][posicaov[1] + 1];
                 matriz[posicaov[0]][posicaov[1] + 1] = aux;
    
             }
             break;
         }
         default:
             System.out.println("opção invalida");
             break;
     }
    

    }

    public boolean verificacaomov(int linha, int coluna, int opcao) {
    boolean valido = true;

     if (opcao == 1 && linha == 0) {
         System.out.println("Esse movimento é invalido.");
         valido = false;
     }
    
     if (opcao == 2 && linha == 3) {
         System.out.println("Esse movimento é invalido.");
         valido = false;
     }
    
     if (opcao == 3 && coluna == 0) {
         System.out.println("Esse movimento é invalido.");
         valido = false;
     }
    
     if (opcao == 4 && coluna == 3) {
         System.out.println("Esse movimento é invalido.");
         valido = false;
     }
    
     return valido;
    

    }

    public void setEscolha(int escolha) {
    this.escolha = escolha;
    }

    private void posicaovazia() {
    int cont = 1;
    for (int x = 0; x < 4; x++) {
    for (int y = 0; y < 4; y++) {
    if (matriz[x][y] == 0) {
    posicaov[0] = x;
    posicaov[1] = y;
    }
    }
    }
    }

    private void posicaopeca() {
    int cont = 1;
    for (int p = 0; p < 4; p++) {
    for (int o = 0; o < 4; o++) {
    if (matriz[p][o] == super.peca) {
    posicaop[0] = p;
    posicaop[1] = o;
    }
    }
    }
    }

}

Muito código ahha

Posta o erro?

matrizPronta[3][3] = 0; e public int[][] getMatrizPronta() {
return matrizPronta;

matrizPronta[3][3] = Integer.toString(0) ;

1 curtida

já resolvi problema.

matrizPronta[3][3] = “”;

1 curtida

OK! :slight_smile:

Precisando tamos ai

1 curtida

obrigada, fiz isso agora rsrsrs

Maravilha! Marque como encerrado =)