在 Java 中使用 Zellers 同余查找星期几
本文展示了如何使用 Java 实现 Zeller 的同余法来查找星期几。 另外,我们将看一个带有逐行解释的示例,以使主题更容易。
在 Java 中使用 Zeller 的同余式查找星期几
请记住,我们在本文中使用的算法是将上一年的 1 月计数为 13,将 2 月计数为 14。
例如,如果日期是 2009 年 1 月 13 日,算法会将其算作 2008 年第 13 个月。在下面的代码围栏中,我们将演示如何查找一周中的某一天。
示例代码:
public class FindDay
{
// A method to print a day for a Date
static void ZellerCongruence(int Day, int Month, int Year){
if (Month == 1){ // Checking the month if it's "January"
Month = 13;
Year--;
}
if (Month == 2){ // Checking the month if it's "February"
Month = 14;
Year--;
}
int DD = Day;
int MM = Month;
int yy = Year % 100;
int YY = Year / 100;
// Calculating the day
int Calc = DD + 13*(MM + 1) / 5 + yy + yy / 4 + YY / 4 + 5 * YY;
Calc = Calc % 7; // Finding the day
switch (Calc){
case 0: System.out.println("The day is: Saturday"); break;
case 1: System.out.println("The day is: Sunday"); break;
case 2: System.out.println("The day is: Monday"); break;
case 3: System.out.println("The day is: Tuesday"); break;
case 4: System.out.println("The day is: Wednesday"); break;
case 5: System.out.println("The day is: Thursday"); break;
case 6: System.out.println("The day is: Friday"); break;
}
}
// Our main class
public static void main(String[] args){
ZellerCongruence(20, 9, 2022); //The date format is (dd/mm/yyyy)
}
}
我们已经描述了每行的用途。 因此,执行上面的示例代码将在控制台中得到以下输出。
The day is: Tuesday
相关文章
Java 中的无符号和有符号右移运算符
发布时间:2023/08/02 浏览次数:168 分类:Java
-
本文介绍 Java 中的有符号和无符号右移运算符。 它还通过代码示例演示了它们的用法。Java 中的无符号和有符号右移运算符 与其他编程语言不同,Java 支持两个右移运算符。
Java 中的菱形运算符
发布时间:2023/08/01 浏览次数:178 分类:Java
-
在本文中,我们将看到菱形运算符 的使用,并且我们将借助示例和解释来讨论该主题,以使该主题更容易。Java 中的菱形运算符
Java中的接口默认方法
发布时间:2023/08/01 浏览次数:125 分类:Java
-
本文介绍如何在Java中使用接口中的默认方法。Java中的接口默认方法 在接口只有抽象方法之前,Java 8 就引入了默认方法。 默认或防御方法允许开发人员在不破坏实现的情况下向接口添加新方法
Java 中的静态接口
发布时间:2023/08/01 浏览次数:73 分类:Java
-
请注意,当接口是嵌套的或另一个接口的子接口时,您可以将接口声明为静态。在 Java 的嵌套接口中使用 static
在 Java 中使用索引和 forEach
发布时间:2023/08/01 浏览次数:136 分类:Java
-
在本文中,我们将学习如何将 forEach() 函数与索引组合一起使用。 此外,我们将通过使用必要的示例和解释来涵盖该主题,以使该主题更容易。
Java 中的并行处理
发布时间:2023/08/01 浏览次数:128 分类:Java
-
在本文中,我们将了解 Java 中的并行处理,以及必要的示例和解释,以使主题变得更容易。并行处理和顺序处理之间的区别
Java 中的装饰器
发布时间:2023/08/01 浏览次数:80 分类:Java
-
装饰器设计模式使用户能够动态添加功能并设置对象的行为,而不影响其对象的行为。 为了扩展类的行为,装饰器大多使用继承。
将InputStream转换为Java中的文件对象
发布时间:2023/08/01 浏览次数:106 分类:Java
-
我们将根据 Java 版本,使用不同的方式编写不同的示例代码,将 InputStream 转换为 File 对象。 下面给出了一些方法:使用纯Java将InputStream转换为文件对象
Java 中的八皇后问题
发布时间:2023/08/01 浏览次数:189 分类:Java
-
本文介绍了 Java 中的八皇后问题。Java 中的八皇后问题 八皇后问题是我们必须将八个皇后放置在 8x8 的棋盘上,并且不能互相攻击。