Java 2实用教程课件(第3版第6章)_第1页
Java 2实用教程课件(第3版第6章)_第2页
Java 2实用教程课件(第3版第6章)_第3页
Java 2实用教程课件(第3版第6章)_第4页
Java 2实用教程课件(第3版第6章)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第章时间、日期和数字 6.1 Date类类6.2 Calendar类类6.3 Math类类6.4 BigInteger类类 .1 Date类类 nDate类在java.util包中。n使用Date类的无参数构造方法创建的对象可以获取本地当前时间。nDate对象表示时间的默认顺序是:星期、月、日、小时、分、秒、年。例如:Sat Apr 28 21:59:38 CST 2001 。 n可以使用DataFormat的子类SimpleDateFormat来实现时期的格式化。SimpleDateFormat有一个常用构造方法: public SimpleDateFormat(String pattern

2、)。n该构造方法可以用参数pattern指定的格式创建一个对象 。npattern中应当含有一些特殊意义字符,这些特殊的字符被称做元字符,例如:ny或yy 表示用2位数字输出年份;yyyy表示用4为数字输出年份。nM 或MM 表示用2位数字或文本输出月份,如果想用汉字输出月份,pattern中应连续包含至少3个M,如:MMM。nd 或dd 表示用2位数字输出日。nH或HH 表示用2位数字输出小时。nm或mm 表示用2位数字输出分。ns或ss 表示用2位数字输出秒。nE 表示用字符串输出星期。P121 Example6_1 Date类import java.util.Date;import ja

3、va.text.SimpleDateFormat;class Example6_1 public static void main(String args) Date nowTime=new Date() ; System.out.println(nowTime); SimpleDateFormat matter1= new SimpleDateFormat( time:yyyy年MM月dd日E 北京时间); System.out.println(matter1.format(nowTime); SimpleDateFormat matter2= new SimpleDateFormat(北京

4、时间:yyyy年MM月dd日HH时mm分ss秒); System.out.println(matter2.format(nowTime); P121 Example6_1 续Date date1=new Date(1000), date2=new Date(-1000);System.out.println(matter2.format(date1);System.out.println(matter2.format(date2);System.out.println(new Date(System.currentTimeMillis() ); P121获取系统当前时间6.2 Calendar

5、类类nCalendar类在java.util包中。使用Calendar类的static方法getInstance()可以初始化一个日历对象,如:Calendar calendar = calendar.getInstance();n然后,calendar对象可以调用方法:set(int year,int month,int date)set(int year,int month,int date,int hour,int minute)set(int year,int month, int date, int hour, int minute,int second)将日历翻到任何一个时间,当参

6、数year取负数时表示公元前。n calendar对象调用方法: public int get(int field)可以获取有关年份、月份、小时、星期等信息,参数field的有效值由Calendar的静态常量指定,例如:calendar.get(Calendar.MONTH);返回一个整数,如果该整数是0表示当前日历是在一月,该整数是1表示当前日历是在二月等。n日历对象调用public long getTimeInMillis()可以将时间表示为毫秒。 P122 Example6_2 Calendar类import java.util.*;class Example6_2 public sta

7、tic void main(String args) Calendar calendar=Calendar.getInstance(); calendar.setTime(new Date(); String 年=String.valueOf(calendar.get(Calendar.YEAR), 月=String.valueOf(calendar.get( Calendar.MONTH)+1 ), 日=String.valueOf(calendar.get(Calendar.DAY_OF_MONTH), 星期=String.valueOf(calendar.get(Calendar.DAY

8、_OF_WEEK)-1); int hour=calendar.get(Calendar.HOUR_OF_DAY), minute=calendar.get(Calendar.MINUTE), second=calendar.get(Calendar.SECOND); 为什么加1?P122 第10行为什么减1?P123 第12行P122 Example6_2 Calendar类 System.out.println(现在的时间是:); System.out.println(+年+年+月+月+日+日 + 星期+星期); System.out.println(+hour+时+minute+分+se

9、cond+秒); calendar.set(1962,5,29); /将日历翻到1962年6月29日,注意5表示六月。 long time1962=calendar.getTimeInMillis(); calendar.set(2006,9,1); long time2006=calendar.getTimeInMillis(); long 相隔天数=(time2006-time1962)/(1000*60*60*24); System.out.println(2006年10月1日和1962年6月29日相隔+相隔天数+天); 如何理解1000*60*60*24?P123 Example6_3

10、 日历的显示import java.util.*;class Example6_3 public static void main(String args) System.out.println( 日 一 二 三 四 五 六); Calendar calen=Calendar. getInstance() ; calen.set(2006,11,1); /将日历翻到2006年12月1日 int weekday=calen.get(Calendar.DAY_OF_WEEK)-1; String a =new Stringweekday+31; for(int i=0;iweekday;i+) a

11、i=*; 为什么元素的个数是weekday+31?P123 Example6_3 日历的显示for(int i=weekday,n=1;iweekday+31;i+) if(n=9) ai=String.valueOf(n)+ ; else ai=String.valueOf(n) ; n+; for(int i=0; ia.length; i+) /输出数组 if(i%7=0) System.out.println(“”); /换行 System.out.print( +ai); 6.3 Math类类n在编写程序时,可能需要计算一个数的平方根、绝对值、获取一个随机数等。njava.lang包

12、中的类包含许多用来进行科学计算的类方法,这些方法可以直接通过类名调用。另外,Math类还有两个静态常量,E和PI,它们的值分别是: 2.7182828284590452354和 3.14159265358979323846。Math类的常用方法 npublic static long abs(double a) 返回a的绝对值。npublic static double max(double a,double b) 返回a、b的最大值。npublic static double min(double a,double b) 返回a、b的最小值。npublic static double ran

13、dom() 产生一个0到1之间的随机数(不包括0和1)。npublic static double pow(double a,double b) 返回a的b次幂。Math类常用方法 npublic static double sqrt(double a) 返回a的平方根。npublic static double log(double a) 返回a的对数。npublic static double sin(double a) 返回正弦值。npublic static double asin(double a) 返回反正弦值。 6.4 BigInteger类类n程序有时需要处理大整数,java.math包中的BigInteger类提供任意精度的整数运算。可以使用构造方法: public BigInteger(String val)构造一个十进制的BigInteger对象。 BigInteger类的常用方法 npublic BigInteger add(BigInteger val) 返回当前大整数对象与参数指定的大整数对象的和和。npublic BigInteger subtract(BigInteger val) 返回当前大整数对象与参数指定的大整数对象的差差。npublic BigInt

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论