20165205 2017-2018-2 《Java程序设计》第六周学习总结
教材学习内容总结
- String类
- String对象(常量,对象)
- 字符串并置(结果仍是常量)
- 常用方法
- length,equals,startsWith,compareTo,contains,contains,substring
- 字符串与基本数据类型相互转化
- 对象的字符串表示
- 正则表达式与字符串
- StringTokenizer类
- Scanner类
- StringBuffer类
- StringBuffer对象
- 常用方法
- append,charAt,serCharAt,insert,reverse,delete,replace
- Date类和Calendar类
- 日期格式化
- Math类,BigInteger类,Random类
- 数字格式化:format方法,格式化整数,格式化浮点数
- Class类与Console类
- Pattern类和Matcher类
- 泛型,链表,堆栈
- 映射(散列,树)
- 树集
教材学习中的问题和解决过程
- 问题1:在看到第一章的时候看到常量池和动态区,看课本的时候我还分的清这两个,但是单独看代码的时候还是会被迷惑,然后我就简单查了一下常量池和动态区的区分方法,但是查到了更深的东西,我就简单把我理解的东西总结了一下
- 问题1解决方法:1)常量池分为两种,静态常量池和运行时的常量池。静态常量池也就是Class文件中的常量池,运行时的常量池:运行时常量池是方法区的一部分。2)常量池的好处:节约内存空间,节省运行时间。
- 问题2:在学习键入数据时我们学到了两种方法,一种是使用Scanner in的方法,还有一种是Integer的方法,但是这两种方法我有时候会混淆,然后我也是自己做了一个总结,当然也查了资料。
- 问题2解决方案:
1.Java命令行参数:
1) 即main方法的参数String[] args;
2) 这里就只声明三点:
1) 命令行参数是从程序名称之后开始算的:java JavaApplication arg1 arg2 arg3 ...
2) args[0]是第一个参数arg1,而并非程序名JavaApplication;
3) 命令行参数是用空格作为分隔符的,如果参数本身是包含空格的,则该参数应该用双引号""引起来,避免其中的空格被当做参数分隔符!!
2.Scanner:
- 是一种基于正则表达式的文本扫描器,可以扫描文本中的字符串(模式)、数字等;
2) 它是一种高级处理流,可以包装文件、键盘输入流、字符串等,对这些节点中的文本流数据进行解析;
代码托管
总结
本周的学习内容基本是学习了java库中的函数,知道了java库中有许多现成的,可以直接拿来用的函数,这些东西都非常有用,还学习了和c语言有些类似的链表,当然也学习了和c语言不同的映射,本周的错题还没有到截止时间,所以我还无法总结错题,下一篇博客中将会总结两周错题。