Troca de caracteres

5 respostas
PePeLeGaL

aí pessoal,

quero trocar os caracteres do string “abcd” assim: primeiro com o segundo, segundo com o terceiro, terceiro com o quarto.

passo 1) “abcd”
passo 2) “bacd”
passo 3) “bcad”
passo 4) “bcda”

alguem conhece algum metodo que pode me auxiliar nessa troca de caracteres ? :roll:

5 Respostas

Romeo

Método assim tão específico não deve ter, utilize charAt e subStrings para fazer isso

maquiavelbona

String.charAt()
String.replace()

PePeLeGaL

mas o problema eh que replace substitui todos os caracteres. Aí nesse caso acho que nao seria correto usa-lo. Por exemplo:

public class Teste
{
	public static void main(String args[])
	{
		String s = "pedrod";
			
		s = s.replace(s.charAt(2), s.charAt(3));
		
		System.out.println(s);
	}
}

o codigo acima substitui todas as ocorrencias do caracter do indice pelo caracter do indice 3. nao eh esse comportamento que eu quero. O que eu quero eh trocar caracter de lugar. :cry:

Romeo

Utilize o conceito de filas que vc deve ter aprendido em Algoritmos…

Tipo, pega o primeiro, joga numa variavel, o segundo em outra e remonta a String do seu jeito, com substring e charAt é só pensar…

é porco, mas da pra fazer…

maquiavelbona

Transforme num array de char e brinque com isso, oras. Função para mudar um pelo o outro nao conheço.

Até!

Criado 21 de março de 2007
Ultima resposta 21 de mar. de 2007
Respostas 5
Participantes 3