Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/09/2014, 07:49
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Método cambia los valores de la variable

Cita:
while(start.before(end) || start.equals(end)){
if(start.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY &&
start.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY){
dias++;
}
start.add(Calendar.DATE,1);
}
Está bastante claro que al llamar a getDiasHabiles estás sumando un día a uno de los valores.

Lo que haces es recorrer las dos fechas incrementando una de ellas hasta que son iguales. Así que cuando vas a ver las semanas, estás comparando el mismo número.

Échale un ojo a los ámbitos de variables

http://www.davidmarco.es/articulo/am...iables-en-java

Para solucionar el problema, o creas otro Calendar que sea el que modifiques, o calculas ese dato con las funciones que te da Calendar, pero sin modificar el objeto.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.