• Viernes 8 de Noviembre de 2024, 21:04

Autor Tema:  como se usa return??  (Leído 3098 veces)

andrescabana215

  • Nuevo Miembro
  • *
  • Mensajes: 18
    • Ver Perfil
como se usa return??
« en: Martes 14 de Junio de 2011, 22:15 »
0
hola no me quedo muy claro leyendo como se aplica return asi que paso un codigo y alguien que pueda explicarme como es...

Código: Java
  1.  
  2.  
  3. String preguntas[];
  4. private String decims[]={
  5.            
  6.             "decimos 1","decimos 2","decimos 3","decimos4"
  7.                        
  8.     };
  9.    
  10.     public String [] preguntas(){
  11.        
  12.         for (int i=0;i<4;i++){
  13.             preguntas[i]=decims[rnd.nextInt(4)];
  14.         }
  15.         return preguntas;
  16.     }
  17.  
  18.    
  19.     public static void main (String[] args){
  20.         clase temas= new clase();
  21.        
  22.         temas.preguntas();
  23.        
  24.         System.out.println(temas.preguntas);
  25.        
  26.        
  27.        
  28.     }
  29.  
  30.  

es un pedazo de codigo cualquiera... pero supongamos que no esta incompleto que todas las variables estan puestas... pero no me queda claro porque no funciona si no me marca error de compilacion

ademas coloco que devuelva un array pero no me devuelve nada...

tomas_sauron

  • Miembro activo
  • **
  • Mensajes: 56
    • Ver Perfil
Re: como se usa return??
« Respuesta #1 en: Miércoles 15 de Junio de 2011, 06:15 »
0
Ahi t va un ejemplo muchacho !!
Código: Java
  1. public int buscarSocio(Socio unSocio){
  2.              int n=0;int i=1;
  3.                  
  4.                   while((n<this.Socios.size())&&(i!=0)){
  5.                      
  6.                       if(0==orden.compare(unSocio, Socios.get(n))){
  7.                           i=0;
  8.                       }
  9.                       else{
  10.                           n++;
  11.                       }  
  12.                   }
  13.             return n;
  14.            
  15.           }          
  16.          
  17.  


si no se entiende pregunt !!
Saludos !!

clindy

  • Nuevo Miembro
  • *
  • Mensajes: 3
  • Nacionalidad: pe
    • Ver Perfil
    • http://www.infomafia.net
Re: como se usa return??
« Respuesta #2 en: Jueves 16 de Junio de 2011, 00:25 »
0
hola para que una función te devuelva un arreglo debes usar apuntadores, no es complicado, te dejo un ejemplo:

#include <stdlib.h> // biblioteca para llamar a malloc

int *devuelve_arreglo ()
{
int *arreglo; // declaramos en apuntador
int tamano = 4; // asignamos el tamaño del vector
arreglo = (int*) malloc ( sizeof(int) * tamano); // se crea el arreglo
arreglo[0] = 1; // asignamos valores
arreglo[1] = 2; // asignamos valores
arreglo[2] = 3; // asignamos valores
arreglo[3] = 4; // asignamos valores
return arreglo;
}


para manipularlo:

int *arreglo; // declaramos el arreglo
arreglo = devuelve_arreglo(); // llamamos a la funcion
// aquí puedes usar los elementos del arreglo

Xaos

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: como se usa return??
« Respuesta #3 en: Jueves 16 de Junio de 2011, 14:41 »
0
Buenas:

Por lo que puedo ver, cuando llamas al metodo temas.preguntas, no le asignas el return a ninguna variable.
Me explico, cuando llamas a un metodo que te retorna algo, lo ideal es que al llamarlo lo hagas con una assignación, para que al manipularlo desde main te sea mas facil.

por ejemplo:
Código: Java
  1.  
  2. preguntas = tema.preguntas();
  3.  
  4. for (i=0; i<4; i++) System.out.println(preguntas[i]);
  5.  
  6.  
  7.  
Evidentemente, la variable destino debe de ser del mismo tipo que el retorno del metodo que llamamos.
No se si me he explicado bien, espero que te sirva.

Saludos!

ripr

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: como se usa return??
« Respuesta #4 en: Jueves 16 de Junio de 2011, 17:02 »
0
puedes poner el error que te manda?? posiblemente sea por que no definiste el tamaño del vector, preguntas. También lo que estoy observo, a la hora de que mandas a imprimir el vector en el main, lo estas haciendo mal debes de recorrer el vector e ir imprimiendo. También podrías crear un método imprime que haga eso.

saludos

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: como se usa return??
« Respuesta #5 en: Viernes 17 de Junio de 2011, 00:32 »
0
clindy estas respondiendo en C una pregunta que es de Java  :P

En cuanto al codigo, andrescabana215, resulta que no estas inicializando el vector preguntas.
Código: Java
  1. String preguntas[] = new String[4];
  2.  

http://download.oracle.com/javase/tutor ... rrays.html
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.