练习题:用扫描器获取输入的时间

本篇博客提供了一个练习题,旨在通过Java的Scanner类获取用户输入的日期时间(年月日时分),并按照企业微信聊天记录的时间格式进行格式化,最后将格式化后的时间在控制台上输出。用户可以反复在控制台输入时间。
摘要由CSDN通过智能技术生成

练习题
用扫描器获取输入的时间(年月日时分),这个时间的格式是常用的格式,然后格式化这个时间,把格式化的时间输出到控制台,可以在控制台重复输入时间.格式化的时间参考企业微信聊天记录的展示时间.
代码演示如下:

package datetime;

import java.util.Scanner;

/**
 * 测试程序
 */

public class DateTimeTest {
   
	public static void main(String[] args) {
   
		 {
   
			 System.out.println("输入exit或者退出可退出程序");
			 System.out.println("日期和时间用空格进行隔开,日期的年月日用斜线/或点.或横杠-表示,时间用冒号:隔开");
			 System.out.println("标准的输入格式如下:");
			 System.out.println("1996/3/1 3:30");
			 System.out.println("下面开始程序测试:");
		}
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入一个合法时间:");
		while (scanner.hasNextLine()) {
   
			String time = scanner.nextLine();
			if (time.equals("exit") || time.equals("退出")) {
   
				break;
			}
			/**
			 * 用工具类处理时间 datetimeFormat 
			 * 格式化时间 INVALID_DATE 无效的日期
			 */
			String datetime=DateTime.datetimeFormat(time);
			if(datetime.equals(DateTime.INVALID_DATE)) {
   
				System.out.println("日期不合法,请重新输入");
				 continue;
			}else if(datetime.equals(DateTime.INVALID_TIME)) {
   
				System.out.println("时间不合法,请重新输入");
				continue;
			}
			System.out.println("时间结果为:"+datetime);
		}
		System.out.println("程序退出,欢迎下次使用");
	}

}

package datetime;

import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.MonthDay;
import java.time.Year;
import java.util.Arrays;


public class DateTime {
   
	/**
	 * 无效的日期
	 */
	public static final String INVALID_DATE = "日期不合法";

	/**
	 * 无效的时间
	 */
	public static final String INVALID_TIME = "时间不合法";
	/**
	 * 无效的日期时间
	 */
	public static final String INVALED_DATETIME = "日期时间不合法";
	/**
	 * 今天
	 */
	private static final String TODAY = "今天";
	/**
	 * 明天
	 */
	private static final String TOMORROW = "明天";
	/**
	 * 昨天
	 */
	private static final String YESTERDAY = "昨天";
	/**
	 * 大月
	 */
	private static int[] BIG_MONTH = {
    1, 3, 5, 7, 8, 10, 12 };
	/**
	 * 小月
	 */
	private static int[] SMALL_MONTH = {
    4, 6, 9, 11 };

	/**
	 * 格式化的时间工具方法
	 * 
	 * @param time 时间源
	 * @return 处理后的时间
	 */
	public static String datetimeFormat(String datetime) {
   
		if (datetime == null || datetime.equals("") || !datetime.contains(" ") || !
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值