Java 中的闰年程序2025年3月31日 | 阅读 7 分钟 在本教程中,我们将讨论如何识别给定年份是否为闰年。但在继续之前,我们将先讨论闰年。 闰年闰年,也称为二月年或闰日年,比其他年份多一天(总共 366 天)。通常,它每 4 年出现一次。2008 年、2012 年、2016 年等是闰年的例子。 验证规则
例如,1996 年是闰年,1999 年不是闰年,因为前者能被 4 整除,而后者不能被 4 整除。 实现:不使用 Scanner 类观察上述规则的实现。 文件名: LeapYear.java 输出 The year 1996 is a leap year. The year 1999 is not a leap year. The year 1700 is not a leap year. The year 2000 is a leap year. 复杂度分析:程序的 O(1) 时间复杂度。程序的 O(1) 空间复杂度。 实现:使用 Scanner 类在这里,用户可以灵活地输入自己选择的年份,然后程序会测试输入的数字是否为闰年。此外,我们还可以使用一个 if 语句来完成我们的工作,而不是多个 if 语句。其实现已在下面的程序中说明。 文件名: LeapYear1.java 输出 Enter Year 1996 The year 1996 is a leap year. Enter Year 1999 The year 1999 is not a leap year. Enter Year 1700 The year 1700 is not a leap year. Enter Year 2000 The year 2000 is a leap year. 复杂度分析:程序的 O(1) 时间复杂度。程序的 O(1) 空间复杂度。 实现:查找范围内的闰年我们还可以借助 for 循环查找给定范围内的闰年。观察下面的程序。 文件名: LeapYear2.java 输出 Finding leap years within the range 2000 and 2150 2000 2004 2008 2012 2016 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 2068 2072 2076 2080 2084 2088 2092 2096 2104 2108 2112 2116 2120 2124 2128 2132 2136 2140 2144 2148 复杂度分析:程序的空间和时间复杂度与前一个程序相同。 实现:使用字符串查找范围我们还可以将年份转换为字符串并检查闰年。请看以下代码。 文件名: LeapYear3.java 输出 Finding leap years within the range 2000 and 2150 2000 2004 2008 2012 2016 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 2068 2072 2076 2080 2084 2088 2092 2096 2104 2108 2112 2116 2120 2124 2128 2132 2136 2140 2144 2148 复杂度分析:该程序将整数转换为字符串,这需要 O(D) 的时间。此外,程序使用变量 *y* 存储该字符串,这也需要 O(D) 的空间。因此,程序的时间和空间复杂度均为 O(D),其中 D 是我们正在检查闰年的年份中数字的总位数。 注意:与其它实现相比,使用字符串的实现耗费空间和时间最多。但是,如果包含年份的输入数组类型为 String,则此方法可能很有用。下一主题Java 在线编译器 GDB |
?Java Development Kit (JDK) 是创建基于 Java 的计算机程序的重要工具。它提供了开发人员构建 Java 程序和 Applet 所需的所有工具和资源。Java Development Kit (JDK) 结合了 Java 虚拟机 (JVM) 和 Java Runtime……
阅读 4 分钟
给定一个数组流。任务是使用 forEach() 方法展平一个数组流。示例 1:输入:数组 [][] = { {1, 2, 3}, {4, 5}, {6, 7, 8, 9} } 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9] 说明:遍历每个子数组,...
阅读 4 分钟
在 Java 中,函数和方法这两个术语通常可以互换使用,但它们之间存在细微差别:函数 是一个独立的代码块,用于执行特定任务。在 C 等过程式编程语言中,函数独立存在并按名称调用……
5 分钟阅读
Java 8 引入的 java.util.function 包包含 ToIntFunction 接口,该接口用于在语言中实现函数式编程。它表示一个接受 T 类型参数并输出整数值的函数。只有一个通用...
阅读 3 分钟
继承的概念代表了 Java 中面向对象编程 (OOP) 的四大基本方面之一。子类可以通过继承机制继承其超类的所有字段和方法。该功能使开发人员能够重用代码块并创建可维护和可扩展的...
阅读 3 分钟
Java DecimalFormat 类的 getPositiveSuffix() 方法用于检索此 DecimalFormat 实例的正后缀值。语法:public String getPositiveSuffix() 参数:此方法不接受任何参数。返回值:此方法返回 DecimalFormat 实例的正后缀值。示例 1:Java 中的 DecimalFormat 类用于此...
阅读 2 分钟
在 Java 中,构造函数是在创建对象时调用的特殊方法。它们用于初始化对象状态并执行任何必要的设置。Java 构造函数的一个有趣特性是能够在其中调用另一个构造函数……
阅读 4 分钟
在 Java 编程领域,线程在实现任务并发执行方面起着至关重要的作用。线程是在单个进程内可以并发运行的轻量级子进程。Java 提供两种类型的线程:用户线程和守护线程。每种类型都有其独特的作用...
阅读 6 分钟
在当今数据驱动的环境中,解读和理解人类语言的能力至关重要。一门名为“自然语言处理”(NLP)的研究领域,结合了语言学和计算机科学,旨在开发能够识别、解析和生成人类语言的计算机程序。对于NLP工作,Java,一种灵活且流行的...
阅读 4 分钟
指的是 Java Enterprise Edition,以前称为 J2EE,目前称为 Jakarta EE。它是一组围绕 Java SE(标准版)的规范。提供了一个平台,为开发人员提供企业级功能,例如分布式计算...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India