




已阅读5页,还剩291页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JAVA精华1 JAVA SE1.1 深入JAVA API1.1.1 Lang包 String类和StringBuffer类位于java.lang包中,这个包中的类使用时不用导入String类一旦初始化就不可以改变,而stringbuffer则可以。它用于封装内容可变的字符串。它可以使用tostring()转换成string字符串。String x=”a”+4+”c”编译时等效于String x=new StringBuffer().append(“a”).append(4).append(“c”).toString();字符串常量是一种特殊的匿名对象,String s1=”hello”;String s2=”hello”;则s1=s2;因为他们指向同一个匿名对象。如果String s1=new String(“hello”);String s2=new String(“hello”);则s1!=s2;/*逐行读取键盘输入,直到输入为“bye”时,结束程序注:对于回车换行,在windows下面,有r和n两个,而unix下面只有n,但是写程序的时候都要把他区分开*/public class readlinepublic static void main(String args)String strInfo=null;int pos=0;byte buf=new byte1024;/定义一个数组,存放换行前的各个字符int ch=0; /存放读入的字符system.out.println(“Please input a string:”);while(true)trych=System.in.read(); /该方法每次读入一个字节的内容到ch变量中。catch(Exception e)switch(ch)case r: /回车时,不进行处理break;case n: /换行时,将数组总的内容放进字符串中strInfo=new String(buf,0,pos); /该方法将数组中从第0个开始,到第pos个结束存入字符串。if(strInfo.equals(bye) /如果该字符串内容为bye,则退出程序。return;else /如果不为bye,则输出,并且竟pos置为0,准备下次存入。System.out.println(strInfo);pos=0;break;default:bufpos+=(byte)ch; /如果不是回车,换行,则将读取的数据存入数组中。String类的常用成员方法1、 构造方法:String(byte byte,int offset,int length);这个在上面已经用到。2、 equalsIgnoreCase:忽略大小写的比较,上例中如果您输入的是BYE,则不会退出,因为大小写不同,但是如果使用这个方法,则会退出。3、 indexOf(int ch);返回字符ch在字符串中首次出现的位置4、 substring(int benginIndex);5、 substring(int beginIndex,int endIndex);返回字符串的子字符串,4返回从benginindex位置开始到结束的子字符串,5返回beginindex和endindex-1之间的子字符串。基本数据类型包装类的作用是:将基本的数据类型包装成对象。因为有些方法不可以直接处理基本数据类型,只能处理对象,例如vector的add方法,参数就只能是对象。这时就需要使用他们的包装类将他们包装成对象。例:在屏幕上打印出一个*组成的矩形,矩形的宽度和高度通过启动程序时传递给main()方法的参数指定。public class testIntegerpublic static void main(String args)/main()的参数是string类型的数组,用来做为长,宽时,要转换成整型。int w=new Integer(args0).intValue();int h=Integer.parseInt(args1);/int h=Integer.valueOf(args1).intValue();/以上为三种将字符串转换成整形的方法。for(int i=0;ih;i+)StringBuffer sb=new StringBuffer(); /使用stringbuffer,是因为它是可追加的。for(int j=0;jw;j+)sb.append(*);System.out.println(sb.toString(); /在打印之前,要将stringbuffer转化为string类型。比较下面两段代码的执行效率:(1)String sb=new String();For(int j=0;jw;j+)Sb=sb+*;(2) StringBuffer sb=new StringBuffer();For(int j=0;jjavaDateAppTodaysdateisThuDec2717:58:16CST2001Todaysdate(InternetGMT)is:27Dec200109:58:16GMTTodaysdate(Locale)is:2001-12-2717:58:16Todaysyearis:101Todaysmonthis:12Todaysdateis:27Day1sdateis:WedFeb2310:12:34CST2000Day2sdateis:FriAug1213:03:00CST1996Day3sdate(GMT)is:5Aug199605:03:00GMTDay3sdate(Locale)is:1996-8-513:03:00Day3stimezoneoffsetis:-480E:javatutorialjava0.2 日历类Calendar在早期的JDK版本中,日期(Date)类附有两大功能:(1)允许用年、月、日、时、分、秒来解释日期:(2)允许对表示日期的字符串进行格式化和句法分析。在JDK1.1中提供了类Calendar来完成第一种功能,类DateFormat来完成第二项功能。dateFormat是java.text包中的一个类。与Date类有所不同的是,DateFormat类接受用各种语言和不同习惯表示的日期字符串。本节将介绍java.util包中的类Calendar及其它新增加的相关的类。类Calendar是一个抽象类,它完成日期(Date)类和普通日期表示法(即用一组整型域如YEAR,MONTH,DAY,HOUR表示日期)之间的转换。由于所使用的规则不同,不同的日历系统对同一个日期的解释有所不同。在JDK1.1中提供了Calendar类一个子类GregorianCalendar?它实现了世界上普遍使用的公历系统。当然用户也可以通过继承Calendar类,并增加所需规则,以实现不同的日历系统。第GregorianCalendar继承了Calendar类。本节将在介绍类GregorianCalendar的同时顺带介绍Calendar类中的相关方法。类GregorianCalendar提供了七种构造函数:(1)publicGregorianCalendar()创建的对象中的相关值被设置成指定时区,缺省地点的当前时间,即程序运行时所处的时区、地点的当前时间。(2)publicGregorianCalendar(TimeZonezone)创建的对象中的相关值被设置成指定时区zone,缺省地点的当前时间。(3)publicGregorianCalendar(LocaleaLocale)创建的对象中的相关值被设置成缺省时区,指定地点aLocale的当前时间。(4)publicGregorianCalendar(TimeZonezone,LocalaLocale)创建的对象中的相关值被设置成指定时区,指定地点的当前时间。上面使用到的类TimeZone的性质如下:TimeZone是java.util包中的一个类,其中封装了有关时区的信息。每一个时区对应一组ID。类TimeZone提供了一些方法完成时区与对应ID两者之间的转换。()已知某个特定的ID,可以调用方法publicstaticsynchronizedTimeZonegetTimeZone(StringID)来获取对应的时区对象。例太平洋时区的ID为PST,用下面的方法可获取对应于太平洋时区的时区对象:TimeZonetz=TimeZone.getTimeZone(PST);调用方法getDefault()可以获取主机所处时区的对象。TimeZonetz=TimeZone.getDefault();()调用以下方法可以获取时区的IDpublicstaticsynchronizedStringgetavailableIDs(intrawOffset)根据给定时区偏移值获取ID数组。同一时区的不同地区的ID可能不同,这是由于不同地区对是否实施夏时制意见不统一而造成的。例Strings=TimeZone.getAvailableIDs(-7*60*60*1000);打印s,结果为s0=PNT,s1=MSTpublicstaticsynchronizedStringgetAvailableIDs()获取提供的所有支持的ID。publicStringgetID()获取特定时区对象的ID。例TimeZonetz=TimeZone.getDefault();Strings=tz.getID();打印s,结果为s=CTT。上面使用类的对象代表了一个特定的地理、政治或文化区域。Locale只是一种机制,它用来标识一类对象,Local本身并不包含此类对象。要获取一个Locale的对象有两种方法:()调用Locale类的构造方法Locale(Stringlanguage,Stringcountry)Locale(Stringlanguage,Stringcountry,Stringvariant)参数说明:language?在ISO-639中定义的代码,由两个小写字母组成。country?在ISO-3166中定义的代码,由两个大写字母组成。variant?售货商以及特定浏览器的代码,例如使用WIN代表Windows。()调用Locale类中定义的常量Local类提供了大量的常量供用户创建Locale对象。例Locale.CHINA为中国创建一个Locale的对象。类TimeZone和类Locale中的其它方法,读者可查阅API。(5)publicGregorianCalendar(intyear,intmonth,intdate)(6)publicGregorianCalendar(intyear,intmonth,intdate,inthour,intminute)(7)publicGregorianCalendar(intyear,intmonth,intdate,inthour,intminute,intsecond)用给定的日期和时间创建一个GregorianCalendar的对象。参数说明:year-设定日历对象的变量YEAR;month-设定日历对象的变量MONTH;date-设定日历对象的变量DATE;hour-设定日历对象的变量HOUR_OF_DAY;minute-设定日历对象的变量MINUTE;second-设定日历对象的变量SECOND。与Date类中不同的是year的值没有1900这个下限,而且year的值代表实际的年份。month的含义与Date类相同,0代表1月,11代表12月。例GregorianCalendarcal=newGregorianCalendar(1991,2,4)cal的日期为1991年3月4号。除了与Date中类似的方法外,Calendar类还提供了有关方法对日历进行滚动计算和数学计算。计算规则由给定的日历系统决定。进行日期计算时,有时会遇到信息不足或信息不实等特殊情况。Calendar采取了相应的方法解决
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电脑知识培训博客课件
- 电脑相关知识培训文档课件
- 电脑服务专业知识培训课件
- 电脑文员入门知识培训课件
- 电脑操作知识培训课件
- servsafe考试题及答案
- 诗歌鉴赏之表达技巧2讲课文档
- 广西崇左市宁明县2022-2023学年九年级上学期期中化学试题(含答案)
- 电生磁优翼课件
- 高端全能月子管家课件
- 高考化学一轮复习知识点梳理05钠及其重要化合物
- 尿道肉阜的科普知识
- 2023年12kV数字式一二次融合环网箱技术规范
- 装修保养手册大全
- GB/T 16400-2023绝热用硅酸铝棉及其制品
- 人机料法环测检查表
- 青岛工学院ppt模板
- 圆形截面偏心受压构件承载能力及裂缝验算(普通钢筋砼)
- 剖宫产疤痕憩室的诊断和治疗【妇产科】
- 重症肝炎的护理查房
- 压力分散型预应力锚索张拉计算书 附张拉表
评论
0/150
提交评论