Enum Class DayOfWeek

java.lang.Object
java.lang.Enum<DayOfWeek>
javax.time.calendar.DayOfWeek
All Implemented Interfaces:
Serializable, Comparable<DayOfWeek>, Constable, Calendrical

public enum DayOfWeek extends Enum<DayOfWeek> implements Calendrical
A day-of-week, such as 'Tuesday'.

DayOfWeek is an enum representing the 7 days of the week - Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.

The calendrical framework requires date-time fields to have an int value. The int value follows the ISO-8601 standard, from 1 (Monday) to 7 (Sunday). It is recommended that applications use the enum rather than the int value to ensure code clarity.

Do not use ordinal() to obtain the numeric representation of DayOfWeek. Use getValue() instead.

This enum represents a common concept that is found in many calendar systems. As such, this enum may be used by any calendar system that has the day-of-week concept with a seven day week where the names are equivalent to those defined. Note that the implementation of DateTimeFieldRule for day-of-week may vary by calendar system.

DayOfWeek is an immutable and thread-safe enum.

  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    The singleton instance for the day-of-week of Friday.
    The singleton instance for the day-of-week of Monday.
    The singleton instance for the day-of-week of Saturday.
    The singleton instance for the day-of-week of Sunday.
    The singleton instance for the day-of-week of Thursday.
    The singleton instance for the day-of-week of Tuesday.
    The singleton instance for the day-of-week of Wednesday.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static DayOfWeek
    Returns the DayOfWeek instance that corresponds to the first day-of-week for a given locale.
    <T> T
    Gets the value of the specified calendrical rule.
    Gets the short textual representation of this day-of-week, such as 'Mon' or 'Fri'.
    getText(Locale locale)
    Gets the full textual representation of this day-of-week, such as 'Monday' or 'Friday'.
    int
    Gets the day-of-week int value.
    boolean
    Is this instance representing Friday.
    boolean
    Is this instance representing Monday.
    boolean
    Is this instance representing Saturday.
    boolean
    Is this instance representing Sunday.
    boolean
    Is this instance representing Thursday.
    boolean
    Is this instance representing Tuesday.
    boolean
    Is this instance representing Wednesday.
    Gets the next day-of-week.
    static DayOfWeek
    of(int dayOfWeek)
    Obtains an instance of DayOfWeek from an int value.
    Gets the previous day-of-week.
    roll(int days)
    Rolls the day-of-week, adding the specified number of days.
    static DayOfWeek
    Returns the enum constant of this class with the specified name.
    static DayOfWeek[]
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • MONDAY

      public static final DayOfWeek MONDAY
      The singleton instance for the day-of-week of Monday. This has the numeric value of 1.
    • TUESDAY

      public static final DayOfWeek TUESDAY
      The singleton instance for the day-of-week of Tuesday. This has the numeric value of 2.
    • WEDNESDAY

      public static final DayOfWeek WEDNESDAY
      The singleton instance for the day-of-week of Wednesday. This has the numeric value of 3.
    • THURSDAY

      public static final DayOfWeek THURSDAY
      The singleton instance for the day-of-week of Thursday. This has the numeric value of 4.
    • FRIDAY

      public static final DayOfWeek FRIDAY
      The singleton instance for the day-of-week of Friday. This has the numeric value of 5.
    • SATURDAY

      public static final DayOfWeek SATURDAY
      The singleton instance for the day-of-week of Saturday. This has the numeric value of 6.
    • SUNDAY

      public static final DayOfWeek SUNDAY
      The singleton instance for the day-of-week of Sunday. This has the numeric value of 7.
  • Constructor Details

    • DayOfWeek

      private DayOfWeek()
  • Method Details

    • values

      public static DayOfWeek[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static DayOfWeek valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • of

      public static DayOfWeek of(int dayOfWeek)
      Obtains an instance of DayOfWeek from an int value.

      DayOfWeek is an enum representing the 7 days of the week. This factory allows the enum to be obtained from the int value. The int value follows the ISO-8601 standard, from 1 (Monday) to 7 (Sunday).

      An exception is thrown if the value is invalid. The exception uses the ISOChronology day-of-week rule to indicate the failed rule.

      Parameters:
      dayOfWeek - the day-of-week to represent, from 1 (Monday) to 7 (Sunday)
      Returns:
      the DayOfWeek singleton, never null
      Throws:
      IllegalCalendarFieldValueException - if the day-of-week is invalid
    • firstDayOfWeekFor

      public static DayOfWeek firstDayOfWeekFor(Locale locale)
      Returns the DayOfWeek instance that corresponds to the first day-of-week for a given locale.

      If there is no information for a locale, MONDAY is returned.

      Parameters:
      locale - the locale to use, not null
      Returns:
      the DayOfWeek singleton, never null
    • getValue

      public int getValue()
      Gets the day-of-week int value.

      The values are numbered following the ISO-8601 standard, from 1 (Monday) to 7 (Sunday).

      Returns:
      the day-of-week, from 1 (Monday) to 7 (Sunday)
    • get

      public <T> T get(CalendricalRule<T> rule)
      Gets the value of the specified calendrical rule.

      This returns the one of the day-of-week values if the type of the rule is DayOfWeek. Other rules will return null.

      Specified by:
      get in interface Calendrical
      Parameters:
      rule - the rule to use, not null
      Returns:
      the value for the rule, null if the value cannot be returned
    • getShortText

      public String getShortText(Locale locale)
      Gets the short textual representation of this day-of-week, such as 'Mon' or 'Fri'.

      This method is notionally specific to ISOChronology as it uses the day-of-week rule to obtain the text. However, it is expected that the text will be equivalent for all day-of-week rules, thus this aspect of the implementation should be irrelevant to applications.

      If there is no textual mapping for the locale, then the ISO-8601 value is returned as per Integer.toString().

      Parameters:
      locale - the locale to use, not null
      Returns:
      the short text value of the day-of-week, never null
    • getText

      public String getText(Locale locale)
      Gets the full textual representation of this day-of-week, such as 'Monday' or 'Friday'.

      This method is notionally specific to ISOChronology as it uses the day-of-week rule to obtain the text. However, it is expected that the text will be equivalent for all day-of-week rules, thus this aspect of the implementation should be irrelevant to applications.

      If there is no textual mapping for the locale, then the ISO-8601 value is returned as per Integer.toString().

      Parameters:
      locale - the locale to use, not null
      Returns:
      the full text value of the day-of-week, never null
    • isMonday

      public boolean isMonday()
      Is this instance representing Monday.
      Returns:
      true if this instance represents Monday
    • isTuesday

      public boolean isTuesday()
      Is this instance representing Tuesday.
      Returns:
      true if this instance represents Tuesday
    • isWednesday

      public boolean isWednesday()
      Is this instance representing Wednesday.
      Returns:
      true if this instance represents Wednesday
    • isThursday

      public boolean isThursday()
      Is this instance representing Thursday.
      Returns:
      true if this instance represents Thursday
    • isFriday

      public boolean isFriday()
      Is this instance representing Friday.
      Returns:
      true if this instance represents Friday
    • isSaturday

      public boolean isSaturday()
      Is this instance representing Saturday.
      Returns:
      true if this instance represents Saturday
    • isSunday

      public boolean isSunday()
      Is this instance representing Sunday.
      Returns:
      true if this instance represents Sunday
    • next

      public DayOfWeek next()
      Gets the next day-of-week.

      This calculates based on the time-line, thus it rolls around the end of the week. The next day after Sunday is Monday.

      Returns:
      the next day-of-week, never null
    • previous

      public DayOfWeek previous()
      Gets the previous day-of-week.

      This calculates based on the time-line, thus it rolls around the end of the week. The previous day before Monday is Sunday.

      Returns:
      the previous day-of-week, never null
    • roll

      public DayOfWeek roll(int days)
      Rolls the day-of-week, adding the specified number of days.

      This calculates based on the time-line, thus it rolls around the end of the week from Sunday to Monday. The days to roll by may be negative.

      This instance is immutable and unaffected by this method call.

      Parameters:
      days - the days to roll by, positive or negative
      Returns:
      the resulting day-of-week, never null