Substring

Bom dia pessoal.

estou fazendo o seguinte usando substring e esta retornando erro dizendo que eu estou estourando a string, a ideia seria pegar uma string “1234” e deixar ela ao contrario “4321”

                    String aux = jTextField.getText();
                    String retorno = "";
                               
                    for (int ind = aux.length() - 1; ind >= 0; ind --)
                    	retorno = retorno + aux.substring(ind,1);

Obrigado pela ajuda

Seguinte, o método substring não funciona da forma "campo_inicial, nº_de_campos", funciona assim "campo_inicial, campo_final". Então seu código ficaria assim:

String aux = jTextField.getText();  
String retorno = "";  

for (int ind = aux.length() - 1; ind >= 0; ind --)  
     retorno = retorno + aux.substring(ind,ind+1);

Já errei bastante com isso também… hehe.

Vou testar aqui

Muito Obrigado pela ajuda

tipo se eu usar

 retorno = retorno + aux.substring(ind,ind);  

ele vai pegar so um campo?

[quote=ftesolim]Bom dia pessoal.

estou fazendo o seguinte usando substring e esta retornando erro dizendo que eu estou estourando a string, a ideia seria pegar uma string “1234” e deixar ela ao contrario “4321”

                    String aux = jTextField.getText();
                    String retorno = "";
                               
                    for (int ind = aux.length() - 1; ind >= 0; ind --)
                    	retorno = retorno + aux.substring(ind,1);

Obrigado pela ajuda[/quote]

[code] String aux = “1234”;
StringBuffer retorno = new StringBuffer();;

	for (int ind = aux.length(); ind >= 1; ind --)   
	    retorno.append(aux.substring(ind - 1, ind)); 
	
	System.out.println(retorno.toString());

[/code]

[quote=ftesolim]tipo se eu usar

 retorno = retorno + aux.substring(ind,ind);  

ele vai pegar so um campo?[/quote]

Se vc usar assim não vai pegar nada, tem sempre que pegar o index de início e um index maior do que ele como final.

Nao sei se isso poderia ajudar, mas vou tentar…
Em vez de vc ficar usando subString, vc nao faz assim:

    String campo = "Campo para inverter";
StringBuffer x= new StringBuffer(campos); // um objeto StringBuffer que tem o metodo para inverter Strings passando a String para inverter
    String campoRevertido = x.reverse();
System.out.println(campoRevertido);

Acho que isso funciona legal!

abraaaço

[quote=alanmateus]Nao sei se isso poderia ajudar, mas vou tentar…
Em vez de vc ficar usando subString, vc nao faz assim:

    String campo = "Campo para inverter";
StringBuffer x= new StringBuffer(campos); // um objeto StringBuffer que tem o metodo para inverter Strings passando a String para inverter
    String campoRevertido = x.reverse();
System.out.println(campoRevertido);

Acho que isso funciona legal!

abraaaço[/quote]

Allan,

Quando postar códigos jogue na tag Code, pf.

Abraço.

Obrigado pela ajuda

eu ja consegui
por hora vou deixar como esta com o StringBuffer…

se puderem me ajudar gostaria de saber apenas mais uma coisa

String aux = "FABIO" char teste[] = new char[aux.length()]; teste = aux.toCharArray();

ele vai criar um array com 5 posições
e vai mover uma letra para cada posição

sendo assim

teste[0] = “F”
teste[1] = “A”

Obrigado

Oi,

Qual é a pergunta?

[quote=rafaelglauber]Oi,

Qual é a pergunta?[/quote]

So confirmar oq eu escrevi no topico ali em cima com questao a array

[quote=ftesolim][quote=rafaelglauber]Oi,

Qual é a pergunta?[/quote]

So confirmar oq eu escrevi no topico ali em cima com questao a array[/quote]

Sim…é isso mesmo que você escreveu.

Obrigado ae Rafael :smiley: