import java.util.Scanner;
public class ProyectoTrabajador3 {
VectorTrabajador vectorTrabajador;
static ProyectoTrabajador3 proyectoTrabajador = new ProyectoTrabajador3();
static Scanner entrada = new Scanner(System.in);
public static void menuPrincipal() {
int op;
do {
System.out.println("MENU PRINCIPAL");
System.out.println("1: Agregar trabajadores");
System.out.println("2: Ingresar un codigo y mostrar todos sus datos");
System.out.println("3: Mostrar los trabajadores ordenados por nombre");
System.out.println("4: Mostrar los trabajadores por sueldo");
System.out.println("5: Salir");
System.out.println("Ingrese opcion");
op = entrada.nextInt();
switch (op) {
case 1:
proyectoTrabajador.ingresoDeDatos();
break;
case 2:
proyectoTrabajador.buscarTrabajador();
break;
case 3:
proyectoTrabajador.vectorTrabajador.ordenarNombre();
System.out.println("Datos por orden de alfabetico:");
proyectoTrabajador.mostrarVector();
break;
case 4:
proyectoTrabajador.vectorTrabajador.ordenarSueldo();
System.out.println("Datos por orden de sueldo:");
proyectoTrabajador.mostrarVector();
break;
default:
System.out.println("Saliendo del programa");
}
} while (op != 5);
}
public static void main(String[] args) {
menuPrincipal();
}
public void ingresoDeDatos() {
int limite;
String codigo;
String nombre;
double valorHora;
int horasTraba;
System.out.println(" Numero De trabajadores:");
limite = entrada.nextInt();
vectorTrabajador = new VectorTrabajador(limite);
for (int i = 0; i < limite; i++) {
System.out.println("Alumno " + (i + 1));
System.out.println("igrese codigo:");
codigo = entrada.next();
System.out.print("Nombre: ");
nombre = entrada.next();
System.out.print("valor por Hora: ");
valorHora = entrada.nextDouble();
System.out.println(" horas trabajadas:");
horasTraba = entrada.nextInt();
Trabajador trabajador = new Trabajador(codigo, nombre, valorHora, horasTraba);
vectorTrabajador.agregar(trabajador);
}
}
public void buscarTrabajador() {
String codigo;
int indice;
Trabajador j;
System.out.println(" ingrese codigo del trabajador a buscar:");
codigo = entrada.next();
indice = vectorTrabajador.buscarCodigo(codigo);
if (indice != -1) {
j = vectorTrabajador.getTrabajador(indice);
System.out.println(j);
} else {
System.out.println("codigo no encontrado");
}
}
public void mostrarVector() {
Trabajador trabajador;
for (int i = 0; i < vectorTrabajador.getTotalELementos(); i++) {
trabajador = vectorTrabajador.getTrabajador(i);
System.out.println(trabajador.getNombre() + "," + trabajador.getSueldo());
}
}
}
CLASE
package proyectrabajador3;
public class Trabajador {
private String codigo;
private String nombre;
private double valorHora;
private int horasTraba;
public Trabajador() {
}
public Trabajador(String codigo, String nombre, double valorHora, int horasTraba) {
this.codigo = codigo;
this.nombre = nombre;
this.valorHora = valorHora;
this.horasTraba = horasTraba;
}
public void setCodigo(String codigo){
this.codigo=codigo;
}
public String getCodigo(){
return codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public double getValorHora() {
return valorHora;
}
public void setValorHora(double valorHora) {
this.valorHora = valorHora;
}
public int getHorasTraba() {
return horasTraba;
}
public void setHorasTraba(int horasTraba) {
this.horasTraba = horasTraba;
}
public double sueldo(){
return horasTraba*valorHora;
}
public double getSueldo(){
return sueldo();
}
public String toString(){
return "NOMBRE "+nombre+"CODIGO "+codigo+"SUELDO "+sueldo();
}
}
VECTOR
package proyectrabajador3;
public class VectorTrabajador {
private Trabajador []trabajadors;
private int totalElementos;
public VectorTrabajador(int limite){
trabajadors=new Trabajador[limite];
totalElementos=0;
}
public Trabajador getTrabajador(int valor){
return trabajadors[valor];
}
public int getTotalELementos(){
return totalElementos;
}
public boolean agregar(Trabajador producto){
if(totalElementos<trabajadors.length){
trabajadors[totalElementos]=producto;
totalElementos++;
return true;
}else
return false;
}
public int buscarCodigo(String codigo){
for(int i=0;i<totalElementos;i++){
if(trabajadors[i].getCodigo().equals(codigo))
return i;
}
return -1;
}
public void ordenarNombre(){
Trabajador ordenar;
int i,j;
for(i=0;i<totalElementos-1;i++ ){
for(j=i+1;j<totalElementos;j++){
if(trabajadors[i].getNombre().compareTo(trabajadors[j].getNombre())>0)
{
ordenar =trabajadors[i];
trabajadors[i]=trabajadors[j];
trabajadors[j]=ordenar;
}}
}
}
public void ordenarSueldo(){
Trabajador ordenar;
double mayo=trabajadors[0].sueldo();
int i,j;
for(i=0;i<totalElementos-1;i++ ){
for(j=i+1;j<totalElementos;j++){
if(trabajadors[i].getSueldo()<trabajadors[j].getSueldo())
{
ordenar =trabajadors[i];
trabajadors[i]=trabajadors[j];
trabajadors[j]=ordenar;
}}
}
}
}