20165230 2017-2018-2 《Java程序设计》第6周学习总结
教材学习内容总结
第八章 常用使用类
- String类常用方法
public int length()
public boolean equals(String s)
-
public boolean startsWith(String s)
public boolean endsWith(String s)
public int compareTo(String s)
public boolean contains(String s)
-
public int indexOf(String s)
public int lastIndexOf(String s)
public String substring(int startpoint)
public String trim()
- String类与StringBuffer类不同:
StringBuffer类的对象的实体的内存空间可以自动的改变大小 - 使用StringTokenizer、Scanner类分析字符序列,获取字符序列中被分隔符分割的单词
- 使用Date类和Calendar类处理时间
- 使用BigInteger类处理特别大的整数
-
使用String类的static方法format格式化日期和数字
第十五章
- 声明泛型类:
class 名称<泛型列表>
- 使用泛型类声明对象时,必须要用具体类型替换泛型列表中的泛型
- LinkedList泛型类创建的对象以链表结构存储数据
- Stack泛型类创建堆栈对象,堆栈的数据“先入后出”,堆栈在顶端进行数据的输入输出操作
- HashMap<K,V>泛型类创建散列映射,采用散列表结构存储数据,用于存储键/值数据对。
- TreeSet类创建树集,树集节点的排列不按先后顺序排列,当实现Comparable接口类创建的对象时,结点按对象的大小关系升序排列
-
TreeMap<K,V>类创建树映射,树映射的结点存储键/值对,保证结点按结点中的键升序排列。
教材学习中的问题和解决过程
- 问题1:String类中的
equals
方法与contains
方法有什么区别? -
问题1解决:通过网上查询了解到
equals是判断字符串的是不是相等,例如:"abc".equals("abc"),返回结果是Boolean类型的true
"abc".equals("ab")返回结果是Boolean类型的false
contains是包含的意思,例如:"abc".contains("a"),返回结果是Boolean类型的true
"abc".contains("d"),返回结果是Boolean类型的false.
contains包含包括,"abc".contains("abcd")是返回的false - 问题2:正则表达式知识点的扩充
问题2解决:
-
\w
表示词的一个字符 -
^[\u0391-\uFFE5]+$
表示一个或多个汉字 -
^1[3|4|5|8][0-9]\d{8}$
表示手机号码。电话号码前三位的括号,需要利用转义符“”
,在java中需再次转义 -
^[A-Za-z][A-Za-z1-9_-]+$
表示:用户名(字母开头 + 数字/字母/下划线) -
^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X|x)?$
表示18位身份证号
代码调试中的问题和解决过程
问题1:在调试example8_7时,输出不能得到书上所说的:“好”“java你”
- 问题1解决:因为机器的默认编码不是GB2312
- 问题2:在调试example8_23时,出现使用过期的API提示
- 问题2解决:和上周遇到的情况相同,不用编译,直接运行即可
问题3,:在调试example15_8时,抛出
Exception in thread "main" java.lang.NoSuchMethodError
异常-
问题3解决:在网上查询得知该异常抛出的情况:
(1).第一个常见原因jar包中确实没有这个方法,所以虚拟机根本没有加载这个方法。
(2).第二个常见原因是jar包冲突了。导致虚拟机不知道加载哪一个,所以就导致了加载失败,从而找不到这个方法。
(3).第三个,也许就是包含在第二种情况中,该方法只有抽象定义,而没有具体实现。代码托管
https://gitee.com/BESTI-IS-JAVA-2018/20165230/commit/5dd42538867b45b2b037b6d2039c2cf622fd26d9
其他(感悟、思考等,可选)
- 本周学习任务较重,基础内容有点跟不上,再加上清明假期没有对之前落下的知识进行弥补,有些吃力。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 13/13 | 1/30 | 19/19 | |
第二周 | 426/426 | 3/30 | 12/12 | |
第三周 | 562/562 | 4/30 | 15/15 | |
第四周 | 1552/1958 | 5/30 | 16/16 | |
第五周 | 1123/3086 | 6/30 | 14/14 |