Maison >Java >javaDidacticiel >Comment calculer le nombre de jours de la semaine entre deux dates en Java ?
Calculer le nombre de jours de la semaine entre deux dates en Java
Pour ceux qui recherchent un extrait de code Java pour calculer le nombre de jours ouvrables (hors week-end) entre deux dates, une réponse populaire de 2011 proposait une solution utilisant la classe Calendar. Malgré l'introduction ultérieure par Java 8 de fonctionnalités modernes de gestion de la date et de l'heure via le package java.time, le code suivant montre comment réaliser ce calcul à l'aide de l'API Calendar :
<code class="java">public static int getWorkingDaysBetweenTwoDates(Date startDate, Date endDate) { Calendar startCal = Calendar.getInstance(); startCal.setTime(startDate); Calendar endCal = Calendar.getInstance(); endCal.setTime(endDate); int workDays = 0; //Return 0 if start and end are the same if (startCal.getTimeInMillis() == endCal.getTimeInMillis()) { return 0; } if (startCal.getTimeInMillis() > endCal.getTimeInMillis()) { startCal.setTime(endDate); endCal.setTime(startDate); } do { //excluding start date startCal.add(Calendar.DAY_OF_MONTH, 1); if (startCal.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY && startCal.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY) { ++workDays; } } while (startCal.getTimeInMillis() < endCal.getTimeInMillis()); //excluding end date return workDays; }</code>
Notez que cette solution suit une approche "continue". " approche de comptage, excluant à la fois les dates de début et de fin elles-mêmes. Par exemple, si le début et la fin sont respectivement un lundi et un vendredi, la méthode renverra 4.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!