How to get day name of given date in Java?
Problem Description :
Write a program in Java that prints day name of given date.
Concept :
We are using below method of Calendar class that is present in java.util.* package.
public int get(int field) -> In this method we have to pass Calendar class constant DAY_OF_WEEK and finally this method returns one value from 1-7. After that using switch case we are printing day name.
Recommended :
Java Program :
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.javamultiplex.datetime; | |
import java.text.DateFormat; | |
import java.text.ParseException; | |
import java.text.SimpleDateFormat; | |
import java.util.Calendar; | |
import java.util.Date; | |
import java.util.Scanner; | |
/** | |
* | |
* @author Rohit Agarwal | |
* @category Date and Time | |
* @problem How to get day name of given date? | |
* | |
*/ | |
public class GetWeekDayName { | |
public static void main(String[] args) { | |
Scanner input = null; | |
try { | |
input = new Scanner(System.in); | |
System.out.println("Enter date in dd/MM/yyyy format :"); | |
String date = input.next(); | |
// If Date is valid, converting String to Date | |
Date mydate = getValidDate(date); | |
if (mydate != null) { | |
// Creating Calendar class instance. | |
Calendar calendar = Calendar.getInstance(); | |
// Converting Date to Calendar. | |
calendar.setTime(mydate); | |
int dayofWeek = calendar.get(Calendar.DAY_OF_WEEK); | |
String dayName = getDayName(dayofWeek); | |
System.out.println("Day : " + dayName); | |
} else { | |
System.out.println("Date is invalid."); | |
} | |
} finally { | |
if (input != null) { | |
input.close(); | |
} | |
} | |
} | |
private static Date getValidDate(String date) { | |
Date mydate = null; | |
if (isValidDateFormat(date)) { | |
/* | |
* d -> Day of month | |
* M -> Month of year | |
* y -> Year | |
*/ | |
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); | |
/* | |
* By default setLenient() is true. We should make it false for | |
* strict date validations. | |
* | |
* If setLenient() is true - It accepts all dates. If setLenient() | |
* is false - It accepts only valid dates. | |
*/ | |
dateFormat.setLenient(false); | |
try { | |
mydate = dateFormat.parse(date); | |
} catch (ParseException e) { | |
mydate = null; | |
} | |
} | |
return mydate; | |
} | |
private static String getDayName(int dayofWeek) { | |
String dayName = null; | |
switch (dayofWeek) { | |
case 1: | |
dayName = "Sunday"; | |
break; | |
case 2: | |
dayName = "Monday"; | |
break; | |
case 3: | |
dayName = "Tuesday"; | |
break; | |
case 4: | |
dayName = "Wednesday"; | |
break; | |
case 5: | |
dayName = "Thursday"; | |
break; | |
case 6: | |
dayName = "Friday"; | |
break; | |
case 7: | |
dayName = "Saturday"; | |
break; | |
} | |
return dayName; | |
} | |
private static boolean isValidDateFormat(String date) { | |
/* | |
* Regular Expression that matches String with format dd/MM/yyyy. | |
* dd -> 01-31 | |
* MM -> 01-12 | |
* yyyy -> 4 digit number | |
*/ | |
String pattern = "(0?[1-9]|[12][0-9]|3[01])\\/(0?[1-9]|1[0-2])\\/([0-9]{4})"; | |
boolean result = false; | |
if (date.matches(pattern)) { | |
result = true; | |
} | |
return result; | |
} | |
} |
Output :
![]() |
Output - How to print day name of given date in Java? |
References :
Thank you friends, I hope you have clearly understood the solution of this problem. If you have any doubt, suggestion or query please feel free to comment below. You can also discuss this solution in our forum.
Tags : Date and Time problems, Get day name, Solution in Java, String, Regular expressions, DateFormat, SimpleDateFormat, if else statement, switch statement, Calendar.
How to get day name of given date in Java?
Reviewed by Rohit Agarwal
on
12/07/2016
Rating:

Thanks for sharing this valuable information to our vision.
ReplyDeleteJavaOnlinecourse
wat happened to the program i cant load it
ReplyDeleteToday, I was just browsing along and came upon your blog. Just wanted to say good blog and this article helped me a lot, due to which I have found exactly I was looking. Custom Patch Maker
ReplyDeleteThe description is indeed very useful. If you need help writing a narrative essay, you are welcome to contact us immediately, and we will be able to assist you accordingly.
ReplyDeletemmorpg oyunlar
ReplyDeleteinstagram takipçi satın al
tiktok jeton hilesi
Tiktok jeton hilesi
antalya saç ekim
takipci satin al
İNSTAGRAM TAKİPÇİ SATIN AL
metin2 pvp serverlar
İnstagram Takipci Satın Al
Smm Panel
ReplyDeletesmm panel
is ilanlari
İNSTAGRAM TAKİPÇİ SATIN AL
HIRDAVAT
HTTPS://WWW.BEYAZESYATEKNİKSERVİSİ.COM.TR/
servis
tiktok hile
Good content. You write beautiful things.
ReplyDeletevbet
hacklink
sportsbet
mrbahis
korsan taksi
hacklink
mrbahis
vbet
taksi
manisa
ReplyDeletemaraş
mardin
marmaris
mersin
MİOQP
erzurum
ReplyDeletekuşadası
ümraniye
beşiktaş
ataşehir
4RCS
beşiktaş
ReplyDeleteeyüpsultan
gebze
kaş
tekirdağ
5ZTQR7
kağıthane
ReplyDeletemuğla
tuzla
etiler
maltepe
LLFFG1