Seguinte…procurei na API mas nao achei…existe algum método da classe String que copia o conteudo de uma String para outro? Podemos fazer isso em Java, assim como é feito em C, por exemplo??
O método .clone() pode ser considerado?
Seguinte…procurei na API mas nao achei…existe algum método da classe String que copia o conteudo de uma String para outro? Podemos fazer isso em Java, assim como é feito em C, por exemplo??
[/quote]
A solucao do Rafael realmente faz uma copia do string, porem acho que isso nao seja necessario para voce. Vou tentar explicar o por que.
A linguagem C nao possui um String propriamente dito, somente uma cadeia de caracteres terminadas por pelo caractere 0. Deste modo , se voce simplesmente usa o operador de atribuicao, na verdade voce fica com dois ponteiros para a mesma cadeia de caracteres, e se voce mudar em uma a outra eh diretamente afetada.
No java, por sua vez, o String eh um tipo IMUTAVEL. Voce nao consegue mudar o 3o caractere da cadeia e ter todas as referencias delas alteradas. Ate porque voce nao consegue fazer algo do tipo: a[3]=‘b’; em java, sendo a variavel a um string.
Caso voce queira em java um objeto semelhante ao comportamento da cadeia de caractere do C, voce deve usar o StringBuffer.
O metodo clone nao eh uma opcao direta, ate porque sua interface nao eh publica e sim protected
valeu pelas respostas…
essa forma de passar o conteudo de uma para outra eu ja sabia, perguntei se tem como fazer isso via método, entendem?
tem como??
A classe StringBuffer tem muitos métodos que você pode usar para manipular Strings, por exemplo para copiar uma String em um vetor de char’s:
getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
//From API: Characters are copied from this string buffer into the destination character array dst.
Tem também métodos de delete, insert, replace e muitos outros, vale a pena dar uma olhada.