Oi Leandro,

Na verdade, fui eu que fiz a pergunta original.

Sei que uma fun��o nao pode retornar mais de
um valor, mas quiz dizer que h� outras formas
de fazer isso, dependendo da linguagem. Por
exemplo, em PL/SQL no Oracle � muito comum fazer
procedures (que n�o retornam valor) com diversos
par�metros tipo OUT (sa�da), que, em �ltima
an�lise, "retornam" valores para quem chamou,
o que, claro, n�o � poss�vel dessa forma em Java.

Eu fiz uns testes, e o problema que detectei em usar vetores
para fazer isso em Java, � que em tempo de compila��o
n�o h� como checar o que ser� retornado.
Por exemplo, o c�digo abaixo compila Ok mas d�
erro de execu��o:

//===============================
import java.util.*;

class X {

  class Classe1 {}
  class Classe2 {}

  Vector metodo1() {
    Vector v = new Vector();
    v.addElement(new Classe2());
    v.addElement(new Classe1());
    return v;
  }

  public static void main(String argv[]) {
    Classe1 c1;
    Classe2 c2;
    Vector v;
    X x = new X();

    v = x.metodo1();
    c1 = (Classe1)v.elementAt(0);
    c2 = (Classe2)v.elementAt(1);
  }
}
//==============================

Exception in thread "main" java.lang.ClassCastException: X$Classe2
        at X.main(X.java:23)

Fora isso, funciona perfeitamente - obrigado a todos pela dica!

Luis Cabral

----- Original Message -----
From: "Leandro Bitencourt" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Monday, October 22, 2001 11:21 AM
Subject: RE: [java-list] M�todo retornando 2 objetos



Fabio,

Primeiro lugar, vc nao esta retornando dois valores, vc esta setando um por
indirecao (int *r1=20) e retornando outro (20).

Por definicao uma funcao nao pode retornar 2 valores, seja na linguagem q
for.

Qto a retornar 2 objetos, vc pode fazer uma array de objetos... um vector,
uma collection... tem duzias de maneiras de fazer isto.

Abra�os,

Leandro Bitencourt
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
ICQ: 69948464


-----Original Message-----
From: Fabio Hasegawa [mailto:[EMAIL PROTECTED]]
Sent: segunda-feira, 22 de outubro de 2001 09:54
To: [EMAIL PROTECTED]
Subject: RE: [java-list] M�todo retornando 2 objetos


Pode utilizar collections........

List, Map, Set.....

Qualquer coisa....
[]�s

F�bio

-----Original Message-----
From: Luis Cabral [mailto:[EMAIL PROTECTED]]
Sent: Sunday, October 21, 2001 6:39 PM
To: [EMAIL PROTECTED]
Subject: [java-list] M�todo retornando 2 objetos


Ol�

Tenho uma d�vida, que ao mesmo tempo prova
que em Java n�o existe passagem de par�metros
por refer�ncia...

Como fazer um m�todo retornar 2 objetos *diferentes*?
Em C por exemplo, eu poderia usar um par�metro
por refer�ncia para que fosse retornado nele um valor:

int funcao(int *r1)
// esta funcao retorna 2 inteiros: 10 e 20
{
*r1 = 10;
return 20;
}

E em Java?

Uma op�ao seria retornar um array, mas sendo
dois objetos diferentes, precisaria ser um array de object's,
ou tem outra forma?




------------------------------ 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]
-------------------------------------------------------------------------



------------------------------ 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]
-------------------------------------------------------------------------

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.286 / Virus Database: 152 - Release Date: 9/10/2001

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.286 / Virus Database: 152 - Release Date: 9/10/2001



--------------------------------------------------------------------------------


------------------------------ 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]
-------------------------------------------------------------------------


------------------------------ 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] 
-------------------------------------------------------------------------

Responder a