如何找到它的星期几 – Java
还有一些其他问题几乎相同,但我似乎无法让我的代码工作。 我得到了生日dd / mm / yyyy的用户输入。 顺便说一下,我忽略了闰年。 我试图确定用户出生时的一周中的哪一天。 我必须确定他们从特定日期出生的天数,在这种情况下是1901年1月1日星期二。这就是为什么我完成了year-1901
day = int day;
使用一个开关来确定每个月的天数由dayMonth
表示,所以7月有31,feb有28等。
年= int year;
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; howManyDays = ((year-1901)*365 + dayMonth + day - 1); whatDay = (howManyDays%7); days[whatDay]
它有时会起作用,但有时则不然。 如果有任何问题随时可以提出,任何帮助表示赞赏。 提前谢谢,希望它有意义!
您可以使用Java日历。
Calendar c = Calendar.getInstance(); c.set(year, month, day); int day_of_week = c.get(Calendar.DAY_OF_WEEK);
这给你一个int,它是哪一天,你可以提供一个数组来映射日期的“名称”。
您使用的代码无法在任何标准日期操作中实现,因为有许多情况,如闰年等。
尝试使用java.util.Calendar进行需要知道Week Days,Months等详细信息的日期操作。
对于更复杂的日期function使用JODA日历 。 Joda日历速度很快,并且有很多操作,例如两天之间的日期等。您可以查看上面的链接以获取更多详细信息。
现在你可以使用它
Calendar calendar = Calendar.getInstance(); calendar.set(year, month, date) ; int i=calendar.get(Calendar.DAY_OF_WEEK);
在这里,i的值将从周日到周六的1-7。