Here you can find the source of isBusinessDay(Calendar cal)
Parameter | Description |
---|---|
cal | a parameter |
public static boolean isBusinessDay(Calendar cal)
//package com.java2s; //License from project: Apache License import java.util.Calendar; public class Main { /**//w w w. ja v a 2 s . co m * Is Date A Business Day? * @param cal * @return boolean */ public static boolean isBusinessDay(Calendar cal) { // check if weekend if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY || cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { return false; } // check if New Year's Day if (cal.get(Calendar.MONTH) == Calendar.JANUARY && cal.get(Calendar.DAY_OF_MONTH) == 1) { return false; } // check if Christmas if (cal.get(Calendar.MONTH) == Calendar.DECEMBER && cal.get(Calendar.DAY_OF_MONTH) == 25) { return false; } // check if 4th of July if (cal.get(Calendar.MONTH) == Calendar.JULY && cal.get(Calendar.DAY_OF_MONTH) == 4) { return false; } // check Thanksgiving (4th Thursday of November) if (cal.get(Calendar.MONTH) == Calendar.NOVEMBER && cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) == 4 && cal.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) { return false; } // check Memorial Day (last Monday of May) if (cal.get(Calendar.MONTH) == Calendar.MAY && cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY && cal.get(Calendar.DAY_OF_MONTH) > (31 - 7)) { return false; } // check Labor Day (1st Monday of September) if (cal.get(Calendar.MONTH) == Calendar.SEPTEMBER && cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) == 1 && cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { return false; } // check President's Day (3rd Monday of February) if (cal.get(Calendar.MONTH) == Calendar.FEBRUARY && cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) == 3 && cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { return true; } // check Veterans Day (November 11) if (cal.get(Calendar.MONTH) == Calendar.NOVEMBER && cal.get(Calendar.DAY_OF_MONTH) == 11) { return true; } // check MLK Day (3rd Monday of January) if (cal.get(Calendar.MONTH) == Calendar.JANUARY && cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) == 3 && cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { return true; } // IF NOTHING ELSE, IT'S A BUSINESS DAY return true; } }