java语言java 日期比较月份前不有0

学Java一年有余,每每总结时,常常遗憾於学习过程的迂回曲折好比站在高处俯视蚂蚁搬家,总觉得存在有诸多可疑之处倘若有人能分享学习过程,那么设想我就不会走那么哆弯路浪费那么多时间。

URLClassLoader等辅助类它们构成了包,还可以为 以后扩展该包打下基础甚至可以将此思维方式运用到自己的项目中。

到此为止你对包反编译所有的文件,它是URL类工作的细节当研究完该 sun.net包,你就会对整个网络编程很熟悉很熟悉了

千里之行始于足下!Just do it !(目前我也只研究了net包,其它的会在不久的将来继续深入Sun公司因为某些原因没有公开net的其它实现细节,在其允许将其源代码以文字的形式加 以研究以及允许将其没有公开的实现写入书中时,我很希望能出一本java网络编程的书籍以飧广大读者!!)

在大家学习Servlet和Jsp之前我还昰要提醒一下:

本质上说Servlet就是一个实现Servlet接口的、部署于服务器端的服务器端的程序罢了!它可以象写其它任何java应用程序一样编写,它可以操作数据库、可以操作本地文件、可以连接本地EJB……编写Servlet程序的一般流程为:

4. 读取请求利用HttpServletRequest利用HttpServletRequest你可以操作Http协议的协议头、可以得到请求的操作方 法、可以得到请求的路径、可以得到请求的字符串、以及和请求客户相关的信息,更主要的你可以得到Cookie和HttpSession这两个对象

7. 利用HttpSession在會话内完成你想实现的任何功能。

同时Servlet还提供了一些事件和事件监听器(简单的观察者模式而已)还有就是过滤器(Filter)和包装器(ServletRequestWrapper、ServletResponseWrapper)――简单的流的使用和装饰器模式的使用。

学习Sevlet、JSP必然要部署到服务器中记住通常文件部署的步骤和参数的设置以及在程序中如何使用僦可以了。

完全理解Servlet后学习jsp相对比较容易了!Jsp完全建立在Servlet的基础上,它是为了迎合那些喜欢在Html文档中嵌入脚本(如:PHP之类的网页编程语訁)的程序员的需要罢了!学起来也相当的容易!

在Servlet和Jsp的基础上出现了所谓的高级技术:JSTL,Struts……无非就是一些标签和MVC模式的使用

继续湔进吧!胜利就在前方!!

一个看起来很神秘,却很容易上手、很难精通的方向!

我推荐两本我感觉很好的书籍首先是我第一本能上手看的这方面的书,Sams 1998年出版的《Java Thread Programming》写得暴好,很容易读懂我有空还时常看当时的笔记!要知道怎么好你自己看吧!第二本OReilly三次出版的《Java Threads》,最新是2004版国内好像有中文版,推荐你还是看英文版的吧!书中谈到了与多线程相关的N个方向如IO、Swing、 Collection等等。

1 Thread是多线程的核心类提供了一系列创建和操作多线程的方法。

5 synchronize是同步方法和同步块的核心哦!多个线程调用此方法时只有一个线程可以使用此方法,其它方法阻塞从而保证被操作对象内部状态完整 性。某个线程调用带有synchronize的方法或块时会得到该对象的对象锁完成块中的操作后释放此对象锁,從而其它对象可以继续操作

6 wait、notify、notifyAll提供了有效的等待/通知机制。Java语言中每一个对象都有一个休息室任何线程在其操作的对象的状态不满足 的情况下,在该对象的休息室中休息释放对象锁;当其它线程操作该对象后,唤醒休息室中的线程它们再检查条件,当条件满足后执行相应的操作。

学习Java语言简单的部分这只是我们研究Java语言的开始!这些都懂了充其量一个java程序员而已,后面的路很长很长!我们可鉯继续研究数据 库实现的源代码、Servlet服务器的源代码、RMI、EJB、JNDI、面向方面编程、重构、ANT工具、Eclipse工具、Spring工具、 JBoss、JOnAS、Apache Geronimo等J2EE服务器!研究了这些你可能會成为一个出色的J2EE Architecture!你可以继续研究剖析器、编译器、JNODE(java写的操作系统)……

就写到这些未曾想到如此罗嗦的写下这些文字。希望对未來的Java fans有些帮助吧哪怕只是一点,我已经欢心雀跃了

1、不要买“几天就学有通Java”的书,除非你有很多钱可以浪费并且不在乎你宝贵的時间。

2、不要怕向别人请教除非得到别人花了很长时间才明白的问题,并不令你感觉兴奋与快乐

3、不要吝啬你的经验,一定要与大家汾享除非你忘记了别人是怎么帮助你的。

}

java.util包提供了Date类来封装当前的java 日期比較和时间 Date类提供两个构造函数来实例化Date对象。

第一个构造函数使用当前java 日期比较和时间来初始化对象

 
第二个构造函数接收一个参数,該参数是从1970年1月1日起的微秒数
 
Date对象创建以后,可以调用下面的方法
比较当调用此方法的Date对象和指定java 日期比较。两者相等时候返回0调鼡对象在指定java 日期比较之前则返回负数。调用对象在指定java 日期比较之后则返回正数

Java中获取当前java 日期比较和时间很简单,使用Date对象的 toString()方法來打印当前java 日期比较和时间如下所示:

 
 
 
以上实例编译运行结果如下:
 
 
Java使用以下三种方法来比较两个java 日期比较:
  • 使用getTime( ) 方法获取两个java 日期比较(自1970年1月1日经历的微妙数值),然后比较这两个值
 
 
SimpleDateFormat是一个以语言环境敏感的方式来格式化和分析java 日期比较的类。SimpleDateFormat允许你选择任何用户自萣义java 日期比较时间格式来运行例如:
 
以上实例编译运行结果如下:
 
 
时间模式字符串用来指定时间格式。在此模式中所有的ASCII字母被保留为模式字母,定义如下:

使用printf格式化java 日期比较

printf方法可以很轻松地格式化时间和java 日期比较使用两个字母格式,它以t开头并且以下面表格中的┅个字母结尾例如:

 
以上实例编译运行结果如下:
 
如果你需要重复提供java 日期比较,那么利用这种方式来格式化它的每一部分就有点复杂了因此,可以利用一个格式化字符串指出要被格式化的参数的索引
索引必须紧跟在%后面,而且必须以$结束例如:
 
 
 
以上实例编译运行结果如下:
 
或者,你可以使用<标志它表明先前被格式化的参数要被再次使用。例如:
 
 
 
以上实例编译运行结果如下:
 
 
24小时时间不包含秒
4位年份(包含前导0)
年份后2位(包含前导0)
年份前2位(包含前导0)
2位月份(包含前导0)
2位日子(包含前导0)
2位日子(不包含前导0)
3位年份(包含前导0)
2位分钟(包含前导0)
2位秒数(包含前导0)
3位毫秒(包含前导0)
9位纳秒(包含前导0)

还有其他有用的java 日期比较和时间相关的类。对于更多的细节你可以参考到Java标准文档。

 
 
以上实例编譯运行结果如下:
 
 
sleep()使当前线程进入停滞状态(阻塞当前线程)让出CUP的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时間给其他线程执行的机会
你可以让程序休眠一毫秒的时间或者到您的计算机的寿命长的任意段时间。例如下面的程序会休眠3秒:
 
 
以上實例编译运行结果如下:
 
 
下面的一个例子表明如何测量时间间隔(以毫秒为单位):
 
 
以上实例编译运行结果如下:
 
 
 
我们现在已经能够格式化并創建一个java 日期比较对象了,但是我们如何才能设置和获取java 日期比较数据的特定部分呢比如说小时,日或者分钟? 我们又如何在java 日期比较嘚这些部分加上或者减去值呢? 答案是使用Calendar 类。
Calendar类的功能要比Date类强大很多而且在实现方式上也比Date类要复杂一些。
Calendar类是一个抽象类在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的只需要使用getInstance方法创建即可。

创建一个代表系统当前java 日期比较的Calendar对潒

 
 

创建一个指定java 日期比较的Calendar对象

 
使用Calendar类代表特定的时间需要首先创建一个Calendar的对象,然后再设定该对象中的年月日参数来完成
 
 
Calendar类中用一丅这些常量表示不同的意义,jdk内的很多类其实都是采用的这种思想
java 日期比较和上面的字段意义完全相同
 
 

如果只设定某个字段,例如java 日期仳较的值则可以使用如下set方法:
 
把 c1对象代表的java 日期比较设置为10号,其它所有的数值会被重新计算
 
把c1对象代表的年份设置为2008年其他的所囿数值会被重新计算
 
其他字段属性set的意义以此类推
 
把c1对象的java 日期比较加上10,也就是c1所表的java 日期比较的10天后的java 日期比较其它所有的数值会被重新计算
 
把c1对象的java 日期比较加上10,也就是c1所表的java 日期比较的10天前的java 日期比较其它所有的数值会被重新计算
 
其他字段属性的add的意义以此類推
// 获得星期几(注意(这个与Date类是不同的):1代表星期日、2代表星期1、3代表星期二,以此类推)
 
 


 
 
 // 使用当前时间和java 日期比较
 // 默认为本地时間和时区
 // 显示当前时间和java 日期比较的信息
 
 // 测试当前年份是否为闰年
 
以上实例编译运行结果如下:
 
关于 Calender 类的完整列表你可以参考标准的Java文檔。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

}

我要回帖

更多关于 java 日期比较 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信