elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda sobre un metodo que devuelva tres valores random
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Duda sobre un metodo que devuelva tres valores random  (Leído 9,470 veces)
Dyabel03

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Duda sobre un metodo que devuelva tres valores random
« en: 6 Marzo 2011, 19:40 pm »

Saludos para todos,

Quisiera saber cómo hago o que me aconsejan hacer para que un método me retorne tres valores que  son random…el programa es sobre vuelos aéreos, aca les presento como tengo los atributos y los métodos… Y también si me explicaran como  plantearlo en la clase principal.
De antemano gracias.

Código:
import javax.swing.*;
public class Aerolinea
{
    private long numerotikete;
    private String nombretikete;
    private String clasevuelo;
    private long puertavuelo;
    private long sillavuelo;
    private String ubicacion;
    private String destino;
    private double valortikete;


 // metodo crear tikete
    public Aerolinea(String n,String c,String ub,String de)
    { nombretikete=n;
      numerotikete=(long)(Math.random()*1000);
      clasevuelo=c;
      puertavuelo=(long)(Math.random()*1000);
      sillavuelo=(long)(Math.random()*1000);
      ubicacion=ub;
      destino=de;
      valortikete=0;
    }
     public void pagartikete(double vt)
    { valortikete+=vt;}

     public void cancelartikete(double vt)
    {  if(valortikete==0)
         valortikete-=vt;
         }


    public double consultartikete()
    {return valortikete; }




}

Sé que si escribo:
Código:
public long Aerolinea(String n,String c,String ub,String de)
{
nombretikete=n;
clasevuelo=c;
ubicacion=ub;
destino=de;
valortikete=0;
numerotikete=(long)(Math.random()*1000);
puertavuelo=(long)(Math.random()*1000);
 sillavuelo=(long)(Math.random()*1000);
Return numerotikete;
}

Puedo ver en pantalla sin problema el numero de tiquete  pero como hago para poder retornar  los otros dos atributos?...les agradezco su ayuda.



En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #1 en: 6 Marzo 2011, 20:34 pm »

Retornas un vector


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
tragantras


Desconectado Desconectado

Mensajes: 465


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #2 en: 6 Marzo 2011, 23:37 pm »

o pasa un array como parámetro de entrada y modifica los valores directamente ahi... (cosa feita...)
En línea

Colaboraciones:
1 2
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #3 en: 7 Marzo 2011, 03:54 am »

O lo retornas como una cadena separada por un delimitador después usas la función SPLIT.
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
Pirat3net

Desconectado Desconectado

Mensajes: 270


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #4 en: 7 Marzo 2011, 15:21 pm »

aprobecho esta duda para publicar una duda sobre una de las respuestas, dijeron por ahi retornar un vector,
pero al hacer
return vector[n], lo que vas a hacer es solo retornar la posicion n, y si haces un
for(k=0;k<vector.lenght<;k++){
return vector[k]
}
ahi solo retornaria la posicion vector[0] y se acabaria el metodo.
como se retornarian todos los valores del vector?
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #5 en: 7 Marzo 2011, 18:23 pm »

Pues sólo tienes que enviar el Array, por ejemplo,
Código
  1.  
  2. /* Función que devuelve un Array */
  3. public static int[] fArray(){
  4. int sArray[] = new int[2];
  5. sArray[0] = 1;
  6. sArray[1] = 2;
  7.  
  8. return sArray;
  9. }
  10.  
  11. /* Método principal */
  12. public static void main(String[] args) {
  13. int sArray[] = new int[2];
  14. sArray = fArray();
  15. for(int i=0; i<2; i++){ System.out.println( sArray[i] ); }
  16. }


Resultado:
Código
  1. alex@shellroot:~/Escritorio$ javac PoC.java -Xlint
  2. alex@shellroot:~/Escritorio$ java PoC
  3. 1
  4. 2
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #6 en: 7 Marzo 2011, 20:40 pm »

Quisiera saber cómo hago o que me aconsejan hacer para que un método me retorne tres valores

Un método solo te puede retornar 1 valor o 0,  para el caso del constructor siempre será 0.

Lo que te recomiendo yo es usar los metodos set y get =)

return vector[n], lo que vas a hacer es solo retornar la posicion n

Si haces eso no retornas la posición de "n" sino el contenido en el arreglo en esa posición.

y si haces un
for(k=0;k<vector.lenght<;k++){
return vector[k]
}
ahi solo retornaria la posicion vector[0] y se acabaria el metodo.

No terminaría el método, depende del tamaño del vector. Además supongamos para un caso general, necesitas otro return, para el método.
Y nuevamente no regresará la posicion, sino el contenido de esa posición.

como se retornarian todos los valores del vector?

Así.

Código
  1. public class RetornarVector {
  2.  
  3. public static void main(String args[]) {
  4. new RetornarVector();
  5. }
  6.  
  7.    public RetornarVector() {
  8.     int vaux[] = vector();
  9.     for(int i=0; i<vaux.length; i++)
  10.     System.out.println(vaux[i]);
  11.    }
  12.  
  13.    private int[] vector(){
  14.     int v[]={1,2,3};
  15.     return v;
  16.    }
  17. }
  18.  


Un saludo.
En línea

abc
Pirat3net

Desconectado Desconectado

Mensajes: 270


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #7 en: 8 Marzo 2011, 17:30 pm »

lo que me refiero con el bucle for es que, desde que un metodo retorne un valor, el metodo termina,¿o estoy equivocado?
En línea

Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #8 en: 8 Marzo 2011, 17:45 pm »

Pero si te explico Shell Root ya, el metodo tiene que devolverte el sArray y luego desp en el codigo q seguia despues de llamar al metodo haces un bucle para recorrer sArray[0] hasta sArray[n] depende como lo hagas y para q lo quieras
En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Duda sobre un metodo que devuelva tres valores random
« Respuesta #9 en: 8 Marzo 2011, 17:49 pm »

lo que me refiero con el bucle for es que, desde que un metodo retorne un valor, el metodo termina,¿o estoy equivocado?

No entiendo muy bien a que te refieres con que el método termina?, no te refieres al ciclo?

Y es que como te digo depende, por ejemplo puedo terminar el ciclo con una comparación, por ejemplo

for(int i=0; i<arreglo.length; i++){
   if(arreglo[3]==0)
     break;
}

Depende de lo que quieras hacer, o mas bien de las instrucciones que le des =)

Expon mejor tu duda y te ayudaremos.
En línea

abc
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda sobre valores de la memoria!!! « 1 2 »
Ingeniería Inversa
WILMER5 10 10,141 Último mensaje 19 Noviembre 2008, 11:37 am
por Dari0s
función que devuelva valores únicos
Programación C/C++
indict 3 4,162 Último mensaje 26 Enero 2013, 17:24 pm
por indict
Duda sobre java método generic den explicación
Java
r7pyrred 2 2,061 Último mensaje 9 Febrero 2013, 21:03 pm
por r7pyrred
¿Como puedo hacer para que un método me devuelva dos arrays?
Java
robertito_prado 4 3,446 Último mensaje 14 Agosto 2013, 00:28 am
por Alien-Z
Ayuda para que un metodo me devuelva un objeto
Java
rych 5 3,956 Último mensaje 2 Mayo 2016, 03:29 am
por + 1 Oculto(s)
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines