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