热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

完成字符串和时间对象的转化(DateFormat)、(以及日历Calendar用法)

DateFormat 和SimpleDateFormat示例(时间格式的书写)packagecn.date;importjava.text.DateFormat;importjav

DateFormat  和 SimpleDateFormat

示例(时间格式的书写)

package cn.date;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test02 {
public static void main(String[] args) {
DateFormat d=new SimpleDateFormat("yyyy年-MM月-dd日 hh:mm:ss"); //设置时间格式
Date s=new Date(); //当前时间
String str=d.format(s); //将时间对象按照格式化字符串 ,转换为字符串
System.out.println(str);

String str2="1998-5-20";
DateFormat dd=new SimpleDateFormat("yyyy-MM-dd");
try {
Date ss=dd.parse(str2); //将字符串解析为带有固定格式的字符串,并把它给Date对象。注意:格式要一致
System.out.println(ss);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}
}

 结果

 

 

Calendar  (日历)(日期类)(日期加法)

示例

package cn.date;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class TestClendar {
public static void main(String[] args) {
Calendar c=new GregorianCalendar(); //Calendar是抽象类,不能建对象,要用到他的子类。
c.set(2019, 7,15,18,07,36); //设置日期
Date d=c.getTime(); //得到设定日期 ,没有设值的话,返回当前时间。
// c.setTime(new Date());
System.out.println(d);

// System.out.println(c.get(Calendar.YEAR));

//加法
c.add(Calendar.YEAR, 30);
Date m=c.getTime();
System.out.println(m);

}
}

结果

 

可视化的日历  (挺有意思)                

 代码示例:

package cn.date;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;
public class Visual {
public static void main(String[] args) {
System.out.println("请输入日期(按格式:2019-5-6):");
Scanner scanner=new Scanner(System.in); //输入日期,按格式 ------ System.in输入流
String temp=scanner.nextLine(); //返回输入的结果,给temp变量。
// String temp="2019-2-15"; 这是写死的
DateFormat dateformat=new SimpleDateFormat("yyyy-MM-dd");
try {
Date d= dateformat.parse(temp); //将字符串解析为带有固定格式的字符串,并把它给Date对象。
Calendar calendar=new GregorianCalendar();
calendar.setTime(d);
int day=calendar.get(Calendar.DATE); //获取到当前日期 15;

// System.out.println(day); //打印
calendar.set(Calendar.DATE, 1); //把日期设成2019-2-1,接着查看他是第几天,从而确定它在日历中的位置
// System.out.println(calendar.get(Calendar.DAY_OF_WEEK)); //打印查看2月1日是这周的第几天。6 表示星期五,则星期五为2月1号这一天
// System.out.println(calendar.getActualMaximum(Calendar.DATE)); //这个月的最多天数
int MaxDay=calendar.getActualMaximum(Calendar.DATE); //把天数提取出来

System.out.println("日\t一\t二\t三\t四\t五\t六");
for(int i=1;i System.out.print("\t");

}
//可视化日历
for(int i=1;i<=MaxDay;i++) {
if(i==day) {
System.out.print("*"); //如果打印到当天就打印个星星“*”
}
System.out.print(i+"\t");
int w=calendar.get(Calendar.DAY_OF_WEEK); //得到2019-2-2是这周的第几天
if(w==Calendar.SATURDAY) { //如果是这周的第七天,也就是周六,则换行。
System.out.print("\n");
}
calendar.add(Calendar.DATE, 1); //日期加一,变为2019-2-2;
}

} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
}

打印结果

 

 

 

 

 

 

 

 

 


推荐阅读
  • 深入解析 Java UTC 时间处理技术与应用 ... [详细]
  • 本文介绍了如何利用Apache POI库高效读取Excel文件中的数据。通过实际测试,除了分数被转换为小数存储外,其他数据均能正确读取。若在使用过程中发现任何问题,请及时留言反馈,以便我们进行更新和改进。 ... [详细]
  • 本文深入探讨了CGLIB BeanCopier在Bean对象复制中的应用及其优化技巧。相较于Spring的BeanUtils和Apache的BeanUtils,CGLIB BeanCopier在性能上具有显著优势。通过详细分析其内部机制和使用场景,本文提供了多种优化方法,帮助开发者在实际项目中更高效地利用这一工具。此外,文章还讨论了CGLIB BeanCopier在复杂对象结构和大规模数据处理中的表现,为读者提供了实用的参考和建议。 ... [详细]
  • Java SE 文件操作类详解与应用
    ### Java SE 文件操作类详解与应用#### 1. File 类##### 1.1 File 类概述File 类是 Java SE 中用于表示文件和目录路径名的对象。它提供了丰富的方法来操作文件和目录,包括创建、删除、重命名文件,以及获取文件属性和信息。通过 File 类,开发者可以轻松地进行文件系统操作,如检查文件是否存在、读取文件内容、列出目录下的文件等。此外,File 类还支持跨平台操作,确保在不同操作系统中的一致性。 ... [详细]
  • 开发笔记:深入解析Android自定义控件——Button的72种变形技巧
    开发笔记:深入解析Android自定义控件——Button的72种变形技巧 ... [详细]
  • SQLite数据库CRUD操作实例分析与应用
    本文通过分析和实例演示了SQLite数据库中的CRUD(创建、读取、更新和删除)操作,详细介绍了如何在Java环境中使用Person实体类进行数据库操作。文章首先阐述了SQLite数据库的基本概念及其在移动应用开发中的重要性,然后通过具体的代码示例,逐步展示了如何实现对Person实体类的增删改查功能。此外,还讨论了常见错误及其解决方法,为开发者提供了实用的参考和指导。 ... [详细]
  • 探索偶数次幂二项式系数的求和方法及其数学意义 ... [详细]
  • 本文介绍了一种利用Dom4j库和JFileChooser组件在Java中实现XML文件自定义路径导出的方法。通过创建一个Document对象并设置根元素,结合JFileChooser选择目标路径,实现了灵活的XML文件导出功能。具体步骤包括初始化Document对象、构建XML结构以及使用JFileChooser选择保存路径,确保用户能够方便地将生成的XML文件保存到指定位置。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 探索聚类分析中的K-Means与DBSCAN算法及其应用
    聚类分析是一种用于解决样本或特征分类问题的统计分析方法,也是数据挖掘领域的重要算法之一。本文主要探讨了K-Means和DBSCAN两种聚类算法的原理及其应用场景。K-Means算法通过迭代优化簇中心来实现数据点的划分,适用于球形分布的数据集;而DBSCAN算法则基于密度进行聚类,能够有效识别任意形状的簇,并且对噪声数据具有较好的鲁棒性。通过对这两种算法的对比分析,本文旨在为实际应用中选择合适的聚类方法提供参考。 ... [详细]
  • Java中处理NullPointerException:getStackTrace()方法详解与实例代码 ... [详细]
  • HBase Java API 进阶:过滤器详解与应用实例
    本文详细探讨了HBase 1.2.6版本中Java API的高级应用,重点介绍了过滤器的使用方法和实际案例。首先,文章对几种常见的HBase过滤器进行了概述,包括列前缀过滤器(ColumnPrefixFilter)和时间戳过滤器(TimestampsFilter)。此外,还详细讲解了分页过滤器(PageFilter)的实现原理及其在大数据查询中的应用场景。通过具体的代码示例,读者可以更好地理解和掌握这些过滤器的使用技巧,从而提高数据处理的效率和灵活性。 ... [详细]
  • 如何高效启动大数据应用之旅?
    在前一篇文章中,我探讨了大数据的定义及其与数据挖掘的区别。本文将重点介绍如何高效启动大数据应用项目,涵盖关键步骤和最佳实践,帮助读者快速踏上大数据之旅。 ... [详细]
  • Java 枚举类型中如何正确设置和使用枚举值? ... [详细]
  • 在 Windows 10 环境中,通过配置 Visual Studio Code (VSCode) 实现基于 Windows Subsystem for Linux (WSL) 的 C++ 开发,并启用智能代码提示功能。具体步骤包括安装 VSCode 及其相关插件,如 CCIntelliSense、TabNine 和 BracketPairColorizer,确保在 WSL 中顺利进行开发工作。此外,还详细介绍了如何在 Windows 10 中启用和配置 WSL,以实现无缝的跨平台开发体验。 ... [详细]
author-avatar
手浪用户2602881857
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有