Buenas tengo el siguiente codigo: 
btnAgre.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                try {
                    int n1;
                    int n2;
                    float n3;
                    n3 = Float.parseFloat(campopreci.getText());
                    n1 = Integer.parseInt(campomes.getText());
                    n2 =Integer.parseInt(campodia.getText());
                    Meteorologico nuevo=new Meteorologico(n2,n1,n3);
                    gestorPrincipal.hacerAgregacion(nuevo);
                    gestorPrincipal.hacerPromedioP();
                    gestorPrincipal.hacerDesviacion();
                    gestorPrincipal.hacerError();
                    gestorPrincipal.actualizar();
                } catch (NumberFormatException nfe) {
                    gestorPrincipal.actualizar();
                    mostrarError("Debe digitar solamente valores numéricos.");
                }
            }
        });
Este es un boton para agregar pero se debe de validar que n3 sea menor a 10000 y que el mes no sea mayor de 12 y que el dia no sea mayor que los dias que tiene el mes respectivo.Si incumple alguna de estas debe de volver a recibir los datos.La verdad es que lo he intentado con un while pero no me funciono por lo que ando en busca de ideas 
  
 

