android学习札记第5章之日期javaapi4及集合初步

android学习札记第5章之日期javaapi4及集合初步,adroid应用中时间处处可见,而开发中JAVAAPI日期类也是经常用到的,这节会讲解日期类Date的用法,还有对日期提供运算方法的Caleder日历类。另外,还会开始集合的讲解,首先会降到java.util包下的双向链表数据结构LikedLit,LikedLit相比另一种列表集合ArrayL...
android应用中时间处处可见,而开发中JAVAAPI日期类也是经常用到的,这节会讲解日期类Date的用法,还有对日期提供运算方法的Calender日历类。另外,还会开始集合的讲解,首先会降到java.util包下的双向链表数据结构LinkedList,LinkedList相比另一种列表集合ArrayList来说,对列表的操作胜于ArrayList,但对于查询来说就比较差了,因为每次查询都会从头查询,不过LinkedList可以从两端查询,效率还是比较高的。集合工具集(数据结构工具)就是存储数据的,但对于集合还是要有一个整体的框架的,如图可以看到集合中各个接口和类的关系。注:名词——数据结构:按特定结构,来存储一组数据。步骤阅读步骤阅读工具/原料JDK、eclipse、androidSDK、ADT一、JAVAAPI之日期类java.util.Date1①封装了一个毫秒值(时间戳):从1970-1-1开始。用这个毫秒值来表示一个时间点。 ②创建对象:方法一: Datedate=newDate();//表示当前时间方法二: Datedate=newDate(600000000000L);//表示指定时间步骤阅读2Date的方法:setTime(longtime):设置内部封装的毫秒值getTime():获得内部封装的毫秒值compare(Datedate):当前日期与指定日期比较大小,大返回true,小返回false,相等返回0。步骤阅读END二、JAVAAPI之日期格式化类java.text.SimpleDateFormat1①日期格式工具:用于格式化日期,更利于用户体验。 ②创建对象: Date对象->字符串 SimpleDateFormatsdf=newSimpleDateFormat(格式字符串);步骤阅读2SimpleDateFormat的方法 format(Datedate):将Date对象格式化字符串 parse():将字符串解析成Date对象 applyPattern():修改格式字符串步骤阅读END三、JAVAAPI之日历类java.util.Calender1①日历是抽象父类,表示时间点,提供一组日期运算方法 ②创建对象: Calendarc=newGregorianCalender();//java.util.GregorianCalendar表示罗马历、公历、阳历的当前时间,是Calender的子类,重写了父类的方法。 Calendarc=Calendar.getInstance();//获得实例,返回当地历法,表示当前时间步骤阅读2Calendar的方法: get(字段):获得日期中指定字段的值,如:c.get(Calendar.YEAR);//月份从0开始 set(字段,值):修改指定字段的值 set(intyear,intmonth,intdate,inthour,intmin,ints): add(intfield,intvalue):在指定字段上加value值 compareTo(CalendaranotherCalendar):比较大小 getActualMaximum(intfield):获得指定字段的实际最大值,通常用来获得月中的最大天数 DategetTime():返回Date时间 setTime(Datedate):设置时间 setTimeInMillis():设置时间戳 getTimeInMillis(longmills):获得时间戳星期的常量:星期日~星期六(1~7)步骤阅读END四、JAVAAPI之集合双向链表数据结构java.util.LinkedList1集合LinkedList是双向链表数据结构: 访问两端比中间效率高,遍历查询时效率不高,使用迭代器效率高,适合插入修改时使用。创建对象:LinkedListlist=newLinkedList();步骤阅读2LinkedList的方法: add(数据):添加数据 add(intindex,数据):在指定位置添加数据 addFirst(数据): addLast(数据): getFirst(): getLast(): removeFirst():移除第一个数据并返回这个数据 removeLast(): 先入先出(队列操作): offer(数据):添加数据 peek():访问数据 poll():移除数据 后入先出(栈操作): push():压入数据 pop():弹出数据 get(intindex):获得指定位置的值 contains(数据):判断列表中是否存在与数据相等的数据 set(intindex,数据):替换数据,返回原来的值。 size():数据的数量 remove(intindex):移除指定位置的元素,返回被移除的数据,默认移除第一个数据。 booleanremove(数据):移除与指定数据相等的数据,返回boolean,只移除第一个数据。 clear():清空数据 iterator():迭代器遍历效率高 Iteratorit=list.iterator(); while(it.hasNext()){    System.out.print(it.next()+\"\"); }步骤阅读END五、练习1输入生日,显示“您已经生存了xx天”。步骤阅读2输入年、月,显示当月的日历。步骤阅读3输入n,求第n个丑数。(丑数定义:被3,5,7整除多次后结果为1)思路:方法一:分别把3、5、7放入LinkedList集合,然后循环所输入数之内的所有数字,选出3个集合的最小值并移除,再将最小值分别和3、5、7相乘并放入3个集合末尾,循环1次,当前的最小值即为第一个丑数,循环n次,第n次循环所得的最小值即为第n次丑数。方法二:从i=3开始循环每个值都依次跟3、5、7相除,如果最后除得的结果等于1,判断是丑数,并i++,循环1次,然后设置count++计数,第1个丑数就是3;如果循环n次,第n个丑数就是count。步骤阅读步骤阅读4算式计算(输入算式,计算结果):(PS:涉及面向对象、内部类、字符串处理、正则表达式、大数字对象)步骤阅读步骤阅读步骤阅读步骤阅读END注意事项日期日历类的使用要熟练掌握,注意毫秒值(时间戳)和Date对象、格式化解析的相互转换。LinkedList集合要注意它是一个查询慢、操作快的双向链表数据结构,查询时可以使用迭代器相比for循环快很多,特点是两端查询快,中间查询慢,还要注意栈中先入先出和后入先出两种用法。

本文来自投稿,不代表长河网立场,转载请注明出处: http://www.changhe99.com/a/aN6N4Qvwzm.html

(0)

相关推荐