java跟时间有关的函数_关于java时间函数的两个重要知识点

java时间函数的应该注意哪些事项呢?深圳达内老师把时间函数分为两点,第一:就是java API中的时间类,还有一个就是数据库中的时间函数。主要分为这两点,在java开发过程中设计到时间的,都会用到这两个。首先,我们讲讲java API中的时间类:他主要有以下几个方面    java.util.Date;    java.sql.Date;    java.util.Calendar'    java.text.SimpleDateFormat   java.util.Date 就是在除了SQL语句的情况下面使用,java.sql.Date 是针对SQL语句使用的,它只包含日期而没有时间部分它都有getTime方法返回毫秒数,自然就可以直接构建      java.util.Date d = new java.util.Date(sqlDate.getTime());      java.util.Date 是 java.sql.Date 的父类(注意拼写)前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是java.sql.Date 转换是java.sql.Date date=new java.sql.Date();java.util.Date d=new java.util.Date (date.getTime());反过来是一样的

继承关系:java.lang.Object -> java.util.Date -> java.sql.Date     具体的转换关系就是java.util.Date d=new java.util.Date (new Java.sql.Date());    这些东西是比较有用的。     java.util.Calendar, java.text.SimpleDateFormat用的最多的是时间转换。于是我就利用一个下午的时间好好收集了资料然后封装好一个,如果有什么不好的地方大家可以给我回复。   //注意HH与hh含认不同,HH表示以24小时制取,hh表示以12小时制取

2:SQL中的时间函数。MySql的时间类型有         Java中与之对应的时间类型date                                                java.sql.DateDatetime                                       java.sql.TimestampTimestamp                                   java.sql.TimestampTime                                              java.sql.TimeYear                                               java.sql.Datedate:        只记录日期信息,表示范围为1000-01-01 至 9999-12-31。"YYYY-MM-DD"DateTime    与Date最主要的区别在于:DateTime 可以记录日期和时间信息。而Date只记录日期信息。表示范围为: 1000-01-01 00:00:00 至 9999-12-31 23:59:59  "YYYY-MM-DD HH:MM:SS";TimeStamp   与DateTime类型非常相似 范围为1970-01-01 2037年,精度为1秒/如果在Sql中未对Timestamp类型的列赋值,该列将被构造成当前时间。提交NULL值也会使该列以当前时间录入。如果时间提交错误,该列将被填入0.Timestamp比DateTime 类型所需的存储空间更小,只需要4个字节,而DateTime需要8个字节。但是有一点需要特别注意。Timestamp只能表示时间范围为1970 -2037.   “YYYY-MM-DD HH:MM:SS”Time          只记录时间信息,不包含日期信息。范围为-838:59:59 到 838:59:59,  "HH:MM:SS”。    只要掌握上上面两个知识点,相信对于java时间函数会有一个深刻的认识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
递归是一种重要的程序设计技巧,它允许函数或方法在其自身内部进行调用,以解决复杂的问题。Java中递归程序设计的实现需要注意以下几个知识点: 1. 递归函数的定义 递归函数是一种函数,它在函数体内部调用自身。递归函数必须包含以下两个部分: * 基线条件:这是一种停止递归的条件。当满足基线条件时,递归将停止。 * 递归条件:这是递归函数继续调用自身的条件。递归条件必须包含能将问题规模缩小的逻辑。 例如,下面是一个计算阶乘的递归函数: ``` public static int factorial(int n) { if (n == 0) { // 基线条件 return 1; } else { // 递归条件 return n * factorial(n - 1); } } ``` 2. 递归调用的过程 递归调用是一个函数调用自身的过程。在递归调用时,每个函数调用都会创建一个新的函数栈帧,并将其推入函数调用栈。 在递归函数调用过程中,每个函数栈帧都会保存函数调用时的参数和局部变量。当递归函数满足基线条件时,函数调用栈开始弹出函数栈帧,直到所有函数栈帧都被弹出为止。 3. 递归程序设计的效率 递归程序设计可以使代码更加简洁,但使用不当可能会导致栈溢出等问题。因此,在编写递归程序时需要注意以下几点: * 确定基线条件和递归条件,以避免无限递归。 * 尽可能使用尾递归,以减少函数调用栈的深度。 * 避免使用过多的局部变量和参数,以减少函数栈帧的大小。 下面是一个使用递归函数求斐波那契数列的示例代码: ``` public static int fibonacci(int n) { if (n == 1 || n == 2) { // 基线条件 return 1; } else { // 递归条件 return fibonacci(n - 1) + fibonacci(n - 2); } } ``` 以上就是Java递归程序设计的基本知识点和示例代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值