'Get Current Day (Monday, Tuesday, etc) in Java
I am working on a program that asks the user which day they would like to see a lunch menu for. They can enter any day by name (Monday, Tuesday, etc.). This works well, but I would also like them to be able to enter "Today" and then have the program get the current date and then check the menu for that value.
How would I do this?
Solution 1:[1]
You can use java.util.Calendar
:
Calendar calendar = Calendar.getInstance();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
Solution 2:[2]
This is the exact answer of the question,
Calendar calendar = Calendar.getInstance();
Date date = calendar.getTime();
System.out.println(new SimpleDateFormat("EE", Locale.ENGLISH).format(date.getTime()));
System.out.println(new SimpleDateFormat("EEEE", Locale.ENGLISH).format(date.getTime()));
Result (for today):
Sat
Saturday
Solution 3:[3]
As of Java 8 and its new java.time package:
DayOfWeek dayOfWeek = DayOfWeek.from(LocalDate.now());
or
DayOfWeek dayOfWeek = LocalDate.now().getDayOfWeek();
Solution 4:[4]
Java 8 :
LocalDate.now().getDayOfWeek().name()
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | |
Solution 2 | Miral Sarwar |
Solution 3 | |
Solution 4 |