Está en la página 1de 4

Programación en JAVA

Introducción a la programación empleando el lenguaje JAVA bajo el IDE JCreator.


3 DIC. 2010

Métodos con valor de retorno


Los métodos con valor de retorno son módulos de programa que pueden recibir datos de
entrada por medio de variables locales (parámetros) y posteriormente retorna un resultado al
punto donde es llamado. Este tipo de métodos se utiliza para operar cualquier tipo de proceso
que produzca un resultado.

Los métodos con valor de retorno se clasifican en dos tipos:

 Métodos con valor de retorno sin parámetros.


 Métodos con valor de retorno con parámetros.
1. Métodos con valor de retorno sin parámetros
Este tipo de métodos no reciben datos de entrada; pero de igual forma retornan un resultado al
punto donde son llamados.

Su definición es de la siguiente manera:


tipo nombreMetodo(){
Declaracion de variables locales
Cuerpo del método
return valor;
}

Donde:
 valor: Es el valor que es retornado por el método.
 tipo: Es el tipo del valor de retorno.
Invocación (llamado):
variable = nombreMetodo();
Donde:
 variable: Es la variable que recibe el valor retornado por el método.

2. Métodos con valor de retorno con parámetros


Este tipo de métodos reciben datos de entrada por medio de parámetros y retornan un
resultado al pundo de su llamado.
Su definición es de la siguiente manera:

tipo nombreMetodo(tipo1 p, tipo2 q, tipo3 r, ...){


Declaración de variables locales
Cuerpo del método
return valor;
}

Donde:
tipo: Es el tipo de valor de retorno.
p, q, r, ... : son los nombres de los parámetros.
tipo1, tipo2, tipo3, ... : son los tipos de datos de los parámetros.
valor: es el valor de retorno.

Invocación (llamado):
variable = nombreMetodo(v1, v2, v3, ...);

Donde:
variable: Es el nombre del método llamado.
v1, v2, v3, ... : Son los valores dados a los parámetros.

Ejemplo (métodos con valor de retorno con parámetros): convertir cantidad dada en
segundos en HH:MM:SS

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class HHMMSS extends JApplet implements ActionListener{

JButton btnCal, btnRes;


JLabel lblSeg;
JTextField txtSeg;
JTextArea txtA;
JScrollPane scpScroll;

public void init(){


getContentPane().setLayout(null);
getContentPane().setBackground(Color.darkGray);

lblSeg = new JLabel("SEGUNDOS:");


lblSeg.setBounds(20,20,90,23);
lblSeg.setForeground(Color.white);
lblSeg.setFont(new Font("arial",1,14));
getContentPane().add(lblSeg);

txtSeg = new JTextField();


txtSeg.setBounds(120,20,100,23);
txtSeg.setBackground(new Color(255,200,0));
txtSeg.setFont(new Font("arial",1,14));
getContentPane().add(txtSeg);

btnCal = new JButton("CALCULAR");


btnCal.setBounds(20,53,100,23);
btnCal.addActionListener(this);
getContentPane().add(btnCal);

btnRes = new JButton("RESET");


btnRes.setBounds(120,53,100,23);
btnRes.addActionListener(this);
getContentPane().add(btnRes);

txtA = new JTextArea();


txtA.setFont(new Font("arial",1,16));
txtA.setBackground(Color.darkGray);
txtA.setForeground(Color.green);
txtA.setEditable(false);

scpScroll = new JScrollPane(txtA);


scpScroll.setBounds(20,86,200,80);
getContentPane().add(scpScroll);
}

public void actionPerformed(ActionEvent e){


if(e.getSource()==btnCal)
hms();
if(e.getSource()==btnRes)
reset();
}

void hms(){
txtA.setText("");
int cantSeg = getSegundos(),
hor = horas(cantSeg),
min = minutos(cantSeg),
seg = segundos(cantSeg);
imprimir("Resultado:");
imprimir("----------------\n");
txtA.append("HH:MM:SS >> "+hor+":"+min+":"+seg);
}

void reset(){
txtA.setText("");
txtSeg.setText("");
txtSeg.requestFocus();
}

//Métodos con valor de retorno con parámetros


int horas(int seg){
int h = seg/3600;
return h;
}

int minutos(int seg){


int m = (seg%3600)/60;
return m;
}

int segundos(int seg){


int s = (seg%3600)%60;
return s;
}

//Método que retorna el valor numérico entero de la caja de texto


int getSegundos(){
int cs;
//donde cs: cantidad de segundos.
//Se realiza la validación de datos empleando TRY - CATCH
try{ cs = Integer.parseInt(txtSeg.getText());}
catch(Exception e){ cs = 0;}
return segundos;
}

void imprimir(String cad){


txtA.append(cad+"\n");
}
}