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...
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?
4 Answers
You can use java.util.Calendar:
Calendar calendar = Calendar.getInstance();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
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
As of Java 8 and its new java.time package:
DayOfWeek dayOfWeek = DayOfWeek.from(LocalDate.now());
or
DayOfWeek dayOfWeek = LocalDate.now().getDayOfWeek();
Java 8 :
LocalDate.now().getDayOfWeek().name()