Um dos princ�pios da class library da Java � a imutabilidade das strings, ou seja, qualquer m�todo que "altere" uma string na verdade retorna uma nova inst�ncia, que reflete a altera��o.
 
por exemplo:
 
String x = "teste";
String y = x.replace('e', 'a');
 
teremos x igual a "teste" e y igual a "testa".
 
Num m�todo:
 
void x(String y) {
    y = y + "."; // nesse momento y passa a referenciar uma nova inst�ncia e a original � preservada. quando o m�todo for conclu�do o valor alterado ser� descartado.
}
 
----- Original Message -----
From: "Francisco Deisimar Jr." <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, July 16, 2002 2:03 PM
Subject: [enterprise-list] Passagem de Parametros


Oi, j� estou trabalhando/estudando java a alguns meses e tinha uma id�ia bem definida sobre as passagens de parametros em java. Toda passagem de parametro � por valor, ou seja, sempre passo o conteudo da minha variavel. Se a variavel for do tipo primitivo(int, double, boolean...) ele passa seu conteudo propriamente dito. No caso de objetos � passado seu endere�o na mem�ria, sendo assim quando eu passo um objeto como paramentro e o modifico dentro de um metodo, quando ele finaliza eu tenho meu objeto modificado. No entanto hoje comecei a ter d�vidas sobre isso, pois passei uma String, modifiquei-a no m�todo e ela n�o foi alterada no trecho de c�digo que chamou o m�todo. Ser� que eu entendi tudo errado? ou String � tratado como uma vari�vel primitiva?
Agrade�o antecipadamente pelos coment�rios e explica��es

===========================================
Francisco Deisimar Nobre J�nior
Analista de Sistemas - CIT - M. Dias Branco
===========================================

---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para:
[EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]

Responder a