Contador usando String

Boa noite,

Roda normal com int, como faço para rodar com String ?

Obrigado,

public class Exemplo1 {

    public static void main(String args[]) {

        String[][] valores = new String[3][3];

        int contador = 1;
        for (int x = 0; x < valores.length; x++) {
            for (int y = 0; y < valores[x].length; y++) {
                valores[x][y] = contador++;
            }
        }

        // Apresentando os valores do Array

        for (int x = 0; x < valores.length; x++) {
            for (int y = 0; y < valores[x].length; y++) {
                System.out.print(" | " + valores[x][y]);
            }
            System.out.println(" | "); // pular linha
        }
    }
}

Jovem,
seja mais especifico em seu questionamento assim a galera pode lhe ajudar com mais facilidade
desculpe-me mas não conseguir entender qual é a sua dificuldade.

abs,

O código funciona normalmente com int, exemplo abaixo, porém não funciona com String

    public class Exemplo1 {  
      
        public static void main(String args[]) {  
      
            int[][] valores = new int[3][3];  
      
            int contador = 1;  
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    valores[x][y] = contador++;  
                }  
            }  
      
            // Apresentando os valores do Array  
      
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    System.out.print(" | " + valores[x][y]);  
                }  
                System.out.println(" | "); // pular linha  
            }  
        }  
    }  

Caro g3advance, se você quer usar um String como contador isso não vai funcionar. a menos que você faça algo do tipo

String txt = "uma string qualquer só pra comparação";
for(int i=0; txt.length; i++) {
   System.out.println(" Contando de 0 até o tamanho da string ");
}

Agora se você quizer iterar nos caracteres da string vovê poderia fazer algo como:

Strint txt = "outra string qualquer"; for(int i=0; txt.length; i++) { System.out.println("Caractere:" + txt.charAt(i)); }

Valeu garoto

String onde !? Qual o erro afinal ?

Cara posso não ter entendido muito bem a sua pergunta…
… mas desconfio que a intenção para você querer contar uma string seja por receber ela por parametro (se eu entendi errado me explique novamente sua dúvida)

String não é um tipo adequado par trabalhar operações numerais…
por isso quando existir a necessidade de alguma contagem, cálculo, etc…
… convertemos o tipo string para inteiro e assim poder trabalhar com aquele conteudo de forma numeral…

        // declaração das variaveis.. sem novidade alguma...
        int inteiro = 0;
        String string = "3";

        // conversão para inteiro jogando o resultado numa variavel deste mesmo tipo
        inteiro = Integer.parseInt(string);

qualquer coisa solta o grito
até mais

Olá tucano,

A razão para usar String é que vou usar equals nesse código, só queria saber se é possível fazer a mesma função que ele está fazendo com o int usando String. Vou dar o exemplo abaixo.

Obrigado,

Assim ele funciona normal.

    public class Exemplo1 {  
      
        public static void main(String args[]) {  
      
            int[][] valores = new int[3][3];  
      
            int contador = 1;  
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    valores[x][y] = contador++;  
                }  
            }  
      
            // Apresentando os valores do Array  
      
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    System.out.print(" | " + valores[x][y]);  
                }  
                System.out.println(" | "); // pular linha  
            }  
        }  
    }  

Gostaria de saber se é possível substituir algo para ele funcionar assim.

    public class Exemplo1 {  
      
        public static void main(String args[]) {  
      
            String[][] valores = new String[3][3];  
      
            int contador = 1;  
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    valores[x][y] = contador++;  
                }  
            }  
      
            // Apresentando os valores do Array  
      
            for (int x = 0; x < valores.length; x++) {  
                for (int y = 0; y < valores[x].length; y++) {  
                    System.out.print(" | " + valores[x][y]);  
                }  
                System.out.println(" | "); // pular linha  
            }  
        }  
    }  
 valores[x][y] = String.valueOf(contador++); 

Obrigado dobau.

aham me liguei já no problema envolvente…

… você tá tentando jogar um “int” pra dentro de um “String”
precisará corrigir algumas coisas…

use o wrapper “Integer” onde hoje vc usa o tipo primitivo “int” (ver linha 01)
isso vai te dar alguns métodos básico já implementados
:smiley:

para o contador, quebre o processo em duas etapas,
a primeira converte para string o numero e joga pra tua matriz (ver linha 04)
e a segunda incrementa aquele numero (ver linha 05).

        Integer contador = 1;    
        for (int x = 0; x < valores.length; x++) {    
            for (int y = 0; y < valores[x].length; y++) {  
                valores[x][y] = contador.toString();    
                contador++;
            }    
        }