很久很久前初学Java时的笔记--日期+集合

Date 类


java.Util下 
记录的是一个毫秒值   可正可负  long类型的  
固定是1970/1/1  正数就是之后的  负数是之前的!
Date now = new Date();
默认创建出来的Date实例就表示当前的时间!
Date提供了一个方法叫做 long getTime()
该方法可以获取当前Date对象维护的long值
即1970年元旦到当前Date所表示的时间经过的毫秒数
now.getTime()


使用当前date表示给定的时间
time=....
now.setTime(time)


创建一个新对象 同时给定时间
Date date = new Date(time);




格式化日期
SimpleDateFormat类
该类的主要做用是根据一个给定的日期格式,将Stirng与Date之间相互转换!
注意的两件事:
1.会写日期格式!
2.记住两个转换方法!


y表示年   yyyy四位数字的年   yy两位数字的年
M表示月   MM表示两位数字的月01   M表示一位数字的月1
d表示日   dd表示两位数字的日    d表示一位数字的日
E表示星期  E 
a    am或PM的标识
H小时 24小时制 HH
h小时 12小时制 hh
m分钟           mm
s秒 ss






A 希望显示的格式是 2016-07-22 10:54:00
SimpleDateFormat sdmt = new SimpleDateFormat(“”)




第二种 将日期字符串专程默认的格式 
String str ="2016/1/1 19:56:10"
SimpleDateFormat sdft = new SimpleDateFormat("这里面格式必须和字符串一致!")
Date date = sdft.parse(str);


这种方法必须添加异常!!!


小练习  输出自己的生日 看自己活了多少天!




对日期时间的操作  日历类Calendar
用于封装日历信息  
是一个抽象类,不能被实例化 
具体子类针对不同国家的日历系统 通用的是格里高里历法  即阳历
Calendar提供了一个静态方法getInstance()  方便我们获取一个使用的实现类的实例
实例化 默认表示当前的系统时间!
Calendar calendar = Calendar.getInstance();
还可以  calendar = new GregorianCalendar();


转换成Date
Calendar 提供了一个方法 Date getDate()返回当前Calendar表示的时间
以Date形式返回
Date date = calendar.getTime();
输出date


Date转换成Calendar 
提供了另一各方法  void setTime(Date date)
calendar.setTime(date);


对于时间相关内容的学习,需要掌握:
1.Date SimpleDateFormat  Calendar 之间地作用
2.这三这只间的转换




Calendar 提供了一个set方法 允许我们设置当前Calendar表示的时间! 会自我调整时间
calendar.set(Calendar.YEAR,2008);
......................MONTH,8  注意 月从0 开始! 也可以Calendar.August
和日相关的时间分量 自己点出来看看!
DAY——OF——MONTH  月中的第几天  俗称几号  DATE
DAY——OF——WEEK  周几  这个也和月一样 从0开始!
DAY——OF——YEAR 一年中的第几天


时分秒
HOUR 12小时  HOUR——OF——DAY 24小时
MINUTE 分
SECOND 秒


Calendar 提供了一个get方法 int get(int filed)
可以获取当前calendar中的时间分量。注意 获取月 的时候一定要+1   
获取周的时候(week==1?7:week-1)
获取年  calendar.get(Calendar.YEAR);
获取月  calendar.get(Calendar.MOUNTH)+1;
获取日。。。
。。。。


Calendar 提供了一个可以获取当前Calendar表示的时间中给定的时间分量所允许的最大值!
int a =calendar.getActualMaximum()
一般不会看 一周几天  一年几个月  只看会变的 
比如几年一共多少天
calendar.getActualMaximum(Calendar.Day_OF_YEAR)


Calendar 提供了一个可以计算时间的方法  
void (add)(int field , int value)
是当前Calendar加上给定时间分量对应的值。
计算后可能会影响其他时间分量的值,会自动对应好。
加几天 星期会改变  月也会改变  
calander.add(filed,加的数量)
加天一定写成DAY_OF_YEAR










Collection 集合!
collection 是一个接口,所有集合的顶级接口 规定了所有集合都应具有的方法
集合用来存放一组元素,并提供了维护元素的相关方法!
list 可重复集 有序集合
Set  不可重复集 大部分实现类都是无序的
元素是否重复,取决与元素的equals()比较的结果


Collection c = new ArrayList();
集合提供了一个用于向集合中天加元素的方法!  boolean add(E e)成功添加则返回true
c.add("one");
c.add("two");
.....
获取集合中的元素数量 
int size()
c.size();
判断集合中是否含有元素
boolean isEmpty() 是否为空
清除集合中所有的元素
void clear();


盘点一个集合是否包含给定的元素  boolean contains(E e) 包含返回true
看得是equals 长得一样的


集合中存放的是元素的引用(地址!)
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值