Crear un vector para trabajadores don pueda agregar mostrar por el sueldo y ordenads por el nombre

package proyectrabajador3;

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;
            }}
            }
        
}
    
    }

Share:

Blogroll

BTemplates.com

Buscar este blog

Blog Archive

Con tecnología de Blogger.