Java程序设计基础(微课版)(第2版)-教案 第9章 常用类 教案_第1页
Java程序设计基础(微课版)(第2版)-教案 第9章 常用类 教案_第2页
Java程序设计基础(微课版)(第2版)-教案 第9章 常用类 教案_第3页
Java程序设计基础(微课版)(第2版)-教案 第9章 常用类 教案_第4页
Java程序设计基础(微课版)(第2版)-教案 第9章 常用类 教案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

第9章常用类库教案一、教学目标1.掌握String类的特点与常用方法2.理解String不可变性原理3.掌握StringBuilder、StringBuffer的使用4.掌握8种基本类型对应的包装类5.掌握Math、Random、System类常用方法6.掌握Date、SimpleDateFormat日期时间处理7.掌握Arrays工具类的常用方法8.了解正则表达式的基本使用9.掌握自动装箱与自动拆箱二、教学重点与难点教学重点:-String类常用方法-StringBuilder字符串拼接-包装类与自动装箱拆箱-SimpleDateFormat日期格式化-Arrays工具类使用教学难点:-String不可变性与常量池-String、StringBuilder、StringBuffer区别-正则表达式语法-日期时间API版本差异三、教学内容9.1Object类【教学内容】1.Object是所有类的根类,所有类直接或间接继承2.常用方法:-toString():返回对象字符串表示,建议重写-equals(Object):比较对象,默认比地址,建议重写-hashCode():返回哈希码值-getClass():获取字节码对象3.重写toString():打印对象信息,不是地址4.重写equals():比较对象内容,不是地址【教学要点】-演示不重写toString打印地址-IDE自动生成equals和toString9.2String类9.2.1String特点【教学内容】1.String是字符串,本质是char[]2.不可变性:一旦创建不可改变,重新赋值是新对象3.字符串常量池:相同字面量共享对象4.创建方式:-Strings1="abc";常量池-Strings2=newString("abc");堆内存5.==比较地址,equals比较内容【教学要点】-画图演示字符串内存-代码演示==与equals区别-强调:字符串比较必须用equals9.2.2String常用方法【教学内容】1.判断功能:equals()、equalsIgnoreCase()、contains()isEmpty()、startsWith()、endsWith()2.获取功能:length()、charAt()、indexOf()、lastIndexOf()substring(intbegin)、substring(intbegin,intend)3.转换功能:toCharArray()、getBytes()、toUpperCase()、toLowerCase()valueOf():基本类型转字符串4.其他:replace()、trim()、split()、concat()【教学要点】-substring左闭右开-indexOf找不到返回-1-split切割字符串成数组9.2.3StringBuilder【教学内容】1.可变字符序列,用于字符串拼接2.构造方法:newStringBuilder()、newStringBuilder(String)3.常用方法:append():追加,支持链式编程reverse():反转insert()、delete()、replace()toString():转String4.StringBuffer:线程安全,效率低,同方法5.三者对比:-String:不可变,拼接效率最低-StringBuilder:可变,线程不安全,效率高-StringBuffer:可变,线程安全,效率中【教学要点】-演示循环拼接String的性能问题-字符串拼接推荐用StringBuilder9.3包装类【教学内容】1.8种基本类型对应包装类:byte->Byte,short->Short,int->Integerlong->Long,float->Float,double->Doublechar->Character,boolean->Boolean2.作用:-基本类型转对象,可存入集合-提供类型转换方法3.自动装箱:基本类型->包装类Integeri=100;4.自动拆箱:包装类->基本类型inta=i;5.常用方法:parseInt():字符串转intvalueOf():int/字符串转IntegerintValue():Integer转int6.Integer缓存:-128~127共享对象【教学要点】-演示自动装箱拆箱-重点:字符串与基本类型互转-演示Integer缓存现象9.4数学与随机类【教学内容】1.Math类:全静态方法abs()绝对值、max()/min()最值pow()幂运算、sqrt()平方根ceil()向上取整、floor()向下取整round()四舍五入、random()0-1随机数2.Random类:nextInt()、nextInt(n)0~n-1nextDouble()、nextBoolean()种子相同,随机序列相同【教学要点】-生成指定范围随机数公式-Math.random()vsRandom9.5System类【教学内容】1.System类全静态方法2.currentTimeMillis():当前时间毫秒值-计算程序运行时间3.arraycopy():数组复制4.exit(0):退出JVM5.gc():建议垃圾回收6.getProperty():获取系统属性【教学要点】-演示计算代码执行时间-1970年1月1日零点时间原点9.6日期时间类9.6.1Date类【教学内容】1.Date代表特定瞬间,精确到毫秒2.构造方法:newDate():当前时间newDate(long):指定毫秒值时间3.常用方法:getTime():获取毫秒值setTime(long):设置时间4.大部分方法已过时【教学要点】-Date重写了toString,打印时间-毫秒值与Date互转9.6.2SimpleDateFormat【教学内容】1.作用:日期与字符串互转2.构造:newSimpleDateFormat("yyyy-MM-ddHH:mm:ss")3.格式化(Date->String):format(Date)4.解析(String->Date):parse(String)throwsParseException5.模式字母:y年、M月、d日、H时、m分、s秒、S毫秒【教学要点】-常用模式串要记住-parse要处理异常-模式字母大小写区别9.7Arrays工具类【教学内容】1.数组工具类,全静态方法2.常用方法:toString():数组转字符串sort():排序,基本类型升序binarySearch():二分查找,必须有序copyOf():复制数组equals():比较数组内容fill():填充数组【教学要点】-对比Collections工具类-自定义对象排序用Comparator9.8正则表达式【教学内容】1.正则:规则表达式,校验字符串格式2.String.matches(Stringregex)3.常用语法:字符:[abc]、[^abc]、[a-zA-Z]、.任意字符数量:*0+次、+1+次、?0/1次、{n}、{n,}、{n,m}预定义:\d数字、\w单词字符、\s空白边界:^开头、$结尾4.应用:手机号、邮箱、身份证校验5.String.split(regex)切割、replaceAll替换【教学要点】-常用正则表达式直接给学生-重点是会用,不是写复杂正则四、教学建议1.String不可变性一定要画图演示内存变化2.常用方法多举例,让学生多练习3.日期格式化模式字母容易混,要对比记忆4.正则表达式给常用模板,不要求自创复杂正则5.课后练习:工具类综合练习,学生信息格式化五、常见问题与解决方案1.字符串用==比较内容错误

温馨提示

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

评论

0/150

提交评论