20172316 《程序设计与数据结构》第五周学习总结
教材学习内容总结
第五章和第六章综合总结
- 这两章的主题是条件判断与循环,这种类型的语句可以说应用特别广泛,所以在之前的许多程序里面,我都提前用到了此种语句,之前利用语句的经验给我这周的学习带来了非常大的帮助。
- 不管是
if
、while
、for
、switch
还是do
,都很好理解。布尔表达式,是条件判断与循环的基础,每一个上述语句的利用,都离不开这个。 - 相等性运算符和关系运算符还有逻辑运算符,它们又是布尔表达式的基础(简单理解来就是日常的大于、小于、等于,最复杂也就是逻辑门)。
- 语句块,这里要注意的就是语句块两端由
{}
括好。 - ArrayList类,哈哈,之前再PP7.3用过了,当时也遇到了一些问题(详见20172316《程序设计与数据结构》第四周学习总结 /代码调试中的问题和解决过程/问题三、四),这样一个列表用来保存、管理对象集非常有用。
- 条件运算符,不到半页的篇幅,看书的时候差点跳过。条件运算符是
if-else
的简化,用来偷懒很好用。
教材学习中的问题和解决过程
本周在教材学习中无重大问题。
代码调试中的问题和解决过程
-
问题1:有史以来最严重的问题,不是技术能解决的 -
问题1:PP6.3初步调试,编译未出现问题,但输出乘法表少一行:
-
问题1解决方案:如图(将
n = 12
修改为n = 13
) -
问题2:PP5.7,打完代码后调试,出现这个,
-
问题2解决方案:根据多年的学习经验:这个问题在之前几章没有出现过,在这章出现-->这章学了条件判断和循环-->一定是这部分出了问题。发现自己使用的是
while(ture)
,却没有使用break
形成死循环,解决方法:加入break
。
代码托管
(statistics.sh脚本的运行结果截图)
上上周考试错题总结(上周总结错了,忘记总结上上周的了)
-
错题1: Which properties are true of String objects?
正确答案:A .Their lengths never change
B .The shortest string has zero length
原因:字符串不可变,即其长度不会改变;最短的字符为零如:""
。 -
错题2:What happens if you attempt to use a variable before it has been initialized?
正确答案:A .A syntax error may be generated by the compiler
B .A runtime error may occur during execution
原因:错选为A,实际上并不是所有的未初始化都在编译时被检测出来了。 -
错题3:In the StringMutation program shown in Listing 3.1, if phrase is initialized to "Einstein" what will Mutation #3 yield if Mutation #1: mutation1 = phrase.concat(".")?
正确答案:C .XINSTXIN.
原因:没有看清题意,所以没有结合例子3.1进行判断,导致错误。 -
错题4:Consider the following two lines of code. What can you say about s1 and s2?
String s1 = "testing" + "123";
String s2 = new String("testing 123");
正确答案:C .s1 and s2 are both references to different String objects
原因:s1中间没有空格,而s2有。 -
错题5:Consider the following enumeration
enum Speed { FAST, MEDIUM, SLOW };
正确答案:C .The name of the Speed enumeration whose ordinal value is zero is FAST
原因: 枚举型中第一个枚举值的序数值为1。 -
错题6:You may use the String replace( ) method to remove characters from a String.
正确答案:false
原因: 同上错题1。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第五周 | 260/1549 | 1/9 | 15/110 | 了解到预习的重要性 |
第二周 | 309/504 | 1/5 | 20/40 | 打字速度明显提升 |
第三周 | 311/815 | 2/7 | 25/65 | 无 |
第四周 | 474/1289 | 1/8 | 30/95 | 抗...抗压能力加强? |
参考资料
- 《Java程序设计教程(第八版)》电子工业出版社
- 《使用码云和博客园学习简易教程》
- 《使用开源中国(码云)托管代码》
- 《ASCII码对照表》