existe um neg�cio em Java que se chama promo��o de tipos. Para se realizar uma express�o aritm�tica, os tipos de todos os membros da express�o devem ser equivalentes. Geralmente eles s�o igualados com os tokens de tipagem mais alta (double > long > int...). Na sua express�o width /1.25; eu n�o sei o tipo de width, mas eu sei que 1.25 � double (default). Como double � o "maior" tipo (64 bits), eu tenho a certeza de que seu width vai ser promovido para double e, consequentemente, o resultado da opera��o tamb�m ser� double. No final, ele estar� tentando atribuir um double (lado direito) com algum outro tipo (lado esquerdo). Java n�o vai permitir a compila��o, caso a vari�vel width n�o seja double. Por isso ele deu o erro de lost of precision. Contudo, vc pode assumir a responsabilidade e dar a sua palavra de que n�o haver� perda de precis�o. Para se fazer isto, vc faz o cast. Foi o que vc tentou fazer, mas � assim: width = (int) width /1.25; By Al�! -----Mensagem original----- De: Wagner Cunha [mailto:[EMAIL PROTECTED]] Enviada em: segunda-feira, 25 de junho de 2001 16:22 Para: [EMAIL PROTECTED] Assunto: [java-list] Convers�o de tipos primitivos Ol�... sou novato em java e estou precisando de uma ajuda para resolver um probleminha: width = width /1.25; mas como width eh do tipo int, estou tendo uma mensagem de possible loss of precision... tentei definir para o compilador que eu quero converter: width = int(width/1.25); mas agora eu tenho o erro .'class' expected e unexpected type algu�m pode me ajudar? ------------------------------ 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 para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------
