Seguinte Tenisson, o problema todo ocorre na seguinte linha:
        i += i++ ;
Nesse caso o compilado toma os seguintes passos:
1 - pega o valor da variável i soma com o valor de i e atribui à
variável i;
2 - incrementa o valor de i que foi usada na soma, com a referência já
perdida.

Para chegar ao resultado que você esperava, é só substituir o operador
pós-fixado pelo pré-fixado, assim:
        i += i++ ;

Marcelo Sousa Ancelmo

Borland Certified JBuilder 6 Developer
Sun Certified Programmer for Java 2 Plataform
Sun Certified Web Component Developer for J2EE Plataform


-----Mensagem original-----
De: Tenisson Chaves dos Santos Júnior
[mailto:[EMAIL PROTECTED]] 
Enviada em: quarta-feira, 15 de janeiro de 2003 13:31
Para: [EMAIL PROTECTED]
Assunto: [java-list] Dúvida em código

E-mail Premium BOL
Antivírus, anti-spam e até 100 MB de espaço. Assine já!
http://email.bol.com.br/
Pessoal,

 No código abaixo , eu esperava obter  "3" no valor da variável i. No
entanto , o valor retornado é "2" .
 Alguém poderia me explicar o porquê disso ?

public class Teste{
        public static void main(String args[]) {
                int i=1 ;
                i += i++ ;
                System.out.println(i);
        }
}

Obrigado,

Tenisson Chaves Jr.


------------------------------ LISTA SOUJAVA
---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para
[EMAIL PROTECTED] 
------------------------------------------------------------------------
-





------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a