Java程序通过滚动小时和月份显示时间

2023年 8月 28日 24.3k 0

Java程序通过滚动小时和月份显示时间

高效编码语言的可信度取决于它管理日期和时间的能力。在Java虚拟环境中,我们获得一些内置的工具,如日期、时间和日历来处理与日期和时间相关的问题。

  • java。直到日期类 - 在Java中,有许多包含那些对于程序非常重要的类。 Date类处理日期和时间的操作。它们是具有可克隆、可序列化和可比较接口功能的类。

  • 提取当前日期和时间 - 使用 Java 提取当前日期和时间有两种技术。

    • 日期类的实现

    • 日历类的实现

在日期类的方法中,首先我们会考虑一个包含日期的字符串。通过使用它,我们将获得日期和时间作为输出。通过声明日历类,我们将创建一个实例类,通过调用 getTime() 来获取系统的当前时间。

在今天的这篇文章中,我们将构建一些 Java 代码来通过滚动小时和月份来显示时间。

通过滚动小时和月份来显示时间的算法

在此可能的算法中,我们尝试演示如何使用 Java 通过滚动小时和月份来显示时间。

  • 第 1 步 - 开始。

  • 第 2 步 - 声明年月中各天的函数。

  • 第 3 步 - 声明,int 总计 =0。

  • 第 4 步 - i

  • 第 5 步 - 如果满足条件,则使用 isLeapYear(i) 检查闰年?

  • 第 6 步 - 否则,int i= 1。并检查 i

  • 步骤 7 - 如果满足第五个条件;总计=总计+366;或者,总计=总计+365。

  • 第 8 步 - 进行 i++ 迭代。

  • 第 9 步 - 如果满足第七个条件。

  • 第 10 步 - 然后,total=total+getNumberOfDaysInMonth(year,i);。

  • 第 11 步 - 进行 i++ 迭代。

  • 第 12 步 - 如果不是,则返回总计。

  • 第 13 步 - 终止。

通过滚动小时和月份来显示时间的语法

General Syntax:
public abstract void roll(int calendar_field, boolean up_down)

Using Date class:
package com.DataFlair.DateAndTime;
import java.util.Date;
public class CurrDateUsingDateClass{
public static void main(String args[]) {
Date date = new Date();
System.out.println(date.toString());
}
}
Using Calendar Class:
package com.DataFlair.DateAndTime;
import java.util.Calendar;
public class CurrDateUsingCalenderClass{
public static void main(String args[]) {
Calendar current = Calendar.getInstance();
System.out.println(current.getTime());
}
}

登录后复制

上面,我们提到了给定问题的可能语法。通过遵循这些语法,我们将编写一些程序来通过滚动小时和月来获取时间。

方法

  • 方法 1 - Java 程序通过滚动小时和月份来显示时间

Java 程序通过滚动小时和月份来显示时间

在这些 Java 构建代码中,我们尝试解释如何将上述算法和语法应用于按小时和月份滚动显示时间。

示例 1

import java.util.Calendar;
import java.util.Date;

public class Calendarof2023 {
public static void main(String[] args) throws Exception{
Date d1 = new Date();
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(d1);
c2.setTime(d1);
System.out.println("Today the date is " + d1.toString());
c1.roll(Calendar.MONTH, 50);
System.out.println("Date after rolling by 50 over month will be "+ c1.getTime().toString());
c1.roll(Calendar.HOUR, 70);
System.out.println("Date after rolling by 70 over hours will be "+ c1.getTime().toString());
c1.roll(Calendar.YEAR, 2);
System.out.println("Date after rolling by 2 over year is "+ c1.getTime().toString());
c2.roll(Calendar.MONTH, false);
System.out.println("Date after false rolling over month will be "+ c2.getTime().toString());
c2.roll(Calendar.HOUR, true);
System.out.println("Date after true rolling over hour will be "+ c2.getTime().toString());
c2.roll(Calendar.YEAR, true);
System.out.println("Date after true rolling over year is "+ c2.getTime().toString());
}
}

登录后复制

输出

Today the date is Mon Apr 10 10:42:31 GMT 2023
Date after rolling by 50 over month will be Sat Jun 10 10:42:31 GMT 2023
Date after rolling by 70 over hours will be Sat Jun 10 08:42:31 GMT 2023
Date after rolling by 2 over year is Tue Jun 10 08:42:31 GMT 2025
Date after false rolling over month will be Fri Mar 10 10:42:31 GMT 2023
Date after true rolling over hour will be Fri Mar 10 11:42:31 GMT 2023
Date after true rolling over year is Sun Mar 10 11:42:31 GMT 2024

登录后复制

示例 2

import java.util.*;
public class Calendar2023 {
public static void main(String args[]){
Calendar calndr = Calendar.getInstance();
System.out.println("The Current Month of the year"+ calndr.get(Calendar.MONTH));
calndr.roll(Calendar.MONTH, true);
System.out.println("The New Month is from the year: "+ calndr.get(Calendar.MONTH));
calndr.roll(Calendar.MONTH, false);

// Displaying the result after operation
System.out.println("The new month is: "+ calndr.get(Calendar.MONTH));
}
}

登录后复制

输出

The Current Month of the year3
The New Month is from the year: 4
The new month is: 3

登录后复制

示例 3

import java.util.*;

public class Main {
public static void main(String[] args) throws Exception {
Date d1 = new Date();
Calendar cl = Calendar. getInstance();

cl.setTime(d1);
System.out.println("today is the date - @ "+ d1.toString());

cl. roll(Calendar.MONTH, 100);
System.out.println("date after a month will be as per the calculation - > " + cl.getTime().toString() );

cl. roll(Calendar.HOUR, 70);
System.out.println("date after 7 hrs will be today is ->> "+ cl.getTime().toString() );
}
}

登录后复制

输出

today is the date - @ Mon Apr 10 10:44:41 GMT 2023
date after a month will be as per the calculation - > Thu Aug 10 10:44:41 GMT 2023
date after 7 hrs will be today is ->> Thu Aug 10 08:44:41 GMT 2023

登录后复制

示例 4

import java.util.Calendar;

public class CalendarExample {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
System.out.println("Time is ----- >>:" + cal.getTime());

cal.roll(Calendar.YEAR, false);
System.out.println("Time rolling down the year, result is here--->>:" + cal.getTime());

cal.roll(Calendar.HOUR, true);
System.out.println("Time rolling up the hour is now ---->>>:" + cal.getTime());
}
}

登录后复制

输出

Time is ----- >>:Mon Apr 10 10:45:26 GMT 2023
Time rolling down the year, result is here--->>:Sun Apr 10 10:45:26 GMT 2022
Time rolling up the hour is now ---->>>:Sun Apr 10 11:45:26 GMT 2022

登录后复制

示例 5

import java.util.*;

public class GetCurrentDateAndTime2023{
public static void main(String args[]){
int day, month, year;
int second, minute, hour;
GregorianCalendar date = new GregorianCalendar();

day = date.get(Calendar.DAY_OF_MONTH);
month = date.get(Calendar.MONTH);
year = date.get(Calendar.YEAR);

second = date.get(Calendar.SECOND);
minute = date.get(Calendar.MINUTE);
hour = date.get(Calendar.HOUR);

System.out.println("Current date is now --->> "+day+"/"+(month+1)+"/"+year);
System.out.println("Current time is now --->> "+hour+" : "+minute+" : "+second);
}
}

登录后复制

输出

Current date is now --->> 10/4/2023
Current time is now --->> 10 : 46 : 24

登录后复制

示例 6

package com.DataFlair.DateAndTime;
import java.util.*;
import java.text.*;
public class DateFormatting{
public static void main(String args[]) {
Date CurrDate = new Date( );
SimpleDateFormat formatDate = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");
System.out.println("Current Date(Formatted) Like This:---> " + formatDate.format(CurrDate));
}
}

登录后复制

输出

Current Date(Formatted) Like This:---> Mon 2023.04.10 at 10:47:17 AM GM

登录后复制

示例 7

import java.util.Scanner;
public class Tptimedateexample {

public static void main(String[] args) {
long totalMilliseconds = System.currentTimeMillis();
long totalSeconds = totalMilliseconds / 1000;
long currentSecond = (int)(totalSeconds % 60);
long totalMinutes = totalSeconds / 60;
long currentMinute = (int)(totalMinutes % 60);
long totalHours = totalMinutes / 60;
long currentHour = (int)(totalHours % 24);
long totalDays = totalHours / 24;
int currentYear = (int)(totalDays / 365) + 1970;
long daysInCurrentYear = (totalDays - numberOfLeapYearsSince1970(currentYear)) % 365;
if (currentHour > 0) daysInCurrentYear++;
int currentMonthNum = getMonthFromDays(currentYear, (int) daysInCurrentYear);
String month = getMonthName(currentMonthNum);
int daysTillCurrentMonth = getNumOfDaysToReachThatMonth(currentYear, currentMonthNum);

int startDay = getStartDay(currentYear, currentMonthNum);
int today = (int) daysInCurrentYear - daysTillCurrentMonth;
String dayOfWeek = dayNameOfWeek( ((startDay + today) % 7));
System.out.println("Current date and time is here. Note That---->>>>: " + dayOfWeek + " " + month + " " + today +", " + currentYear +" " + currentHour + ":"+ currentMinute + ":" + currentSecond );

}

public static String dayNameOfWeek(int dayOfWeek) {

switch (dayOfWeek) {
case 2: return "Monday";
case 3: return "Tuesday";
case 4: return "Wednesday";
case 5: return "Thursday";
case 6: return "Friday";
case 7: return "Saturday";
case 1: return "Sunday";
default: return null;
}
}

public static int numberOfLeapYearsSince1970(long year) {

int count = 0;
for (int i = 1970; i >>>: Monday April 10, 2023 10:54:30

登录后复制

结论

在这里,我们通过语法和算法了解了一些可能的java代码的时间滚动方法。希望本文能帮助您了解这里提到的各种滚动方法的操作方式,我们通过这些方法解决了这个问题。

以上就是Java程序通过滚动小时和月份显示时间的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论