20172304 2017-2018-2 《程序设计与数据结构》第六周学习总结
教材学习内容总结
本周学习了数组。
首先是数组元素,数组具有优越性因为它可以声明一个能容纳多个可访问值的变量。数组的数据具有索引而且是从零开始的。
其次是声明和使用数组,可以用“数据类型” [ ] = new “数据类型” [ ]的形式,而且“数据类型”[ ]与[ ]“数据类型”是等价的。也可以将属于类型的位置换成相应的对象。处理数组时用for循环更方便,因为数组有完备的编号。
边界检查:每次访问数组时都会检查索引值,如果索引值不在数组索引值的范围内,就会抛出ArrayIndexOutOfBoundsException异常,也就是数组索引值超出边界异常,数据初始值表:数据初始值表只能在第一次声明数组时使用,用“{ }”将数组数据包起来,用,将数组数据隔开。数组是可以作为参数传递的。对象数组:数组可以储存对象,其和数组的元素操作方法基本一致,而在数组由对象组成时,实际上是对对象的引用。命令行实参:我感觉就是提供了一个方法,在程序中加入arg[ ]数组,在运行程序的时候在后面加上要运行的内容。可变长度参数表:就是在调用参数的时候,可以使用(int...list)的形式将参数的长度变为不确定的。二维数组是相对于一维数组说的,它不仅有列还有行,一个元素由两个索引值确定。==数组的两种声明方式,1,利用数据类型[ ] =new “数据类型”[ int number]的形式只确定数组的长度,不进行实例化,有较大的自由性。== ==2.在进行声明数组的时候直接利用初始值表将数组实例化,从而减少后续的麻烦。==
教材学习中的问题和解决过程。
- 问题1:在打例子8.2的时候我发现在例子中有类似current<='A'的字样,我就很是好奇,为什么数字和字符型可以一一对应?https://blog.csdn.net/z507263441/article/details/47965601
- 问题1解决方案:后来在网上找到了答案。网址原来字符型和整型值的对应关系是根据ascii码来确定的,而且范围是0~255。因为一个字节有8位正好是256个组合。
- 问题2:命令行实参的使用方法。
- 问题2解决方案:后来求助了张旭升学长,知道了是在运行时在命令行输入要显示的字符串。
- 问题3:数组一旦被声明了其长度无法改变,如果想改变怎么办。
问题3解决方案:后来在DVD等的例子中发现了可以通过定义另一个数组的方式,并将原数组的值赋予新数组。
代码调试中的问题和解决过程
问题1:在敲打例子LetterCount的时候我在编译时成功,在运行时发生发生错误。
问题1解决方案:后来发现是自己在敲代码时将“z”写成了“Z”。
- 问题2:在编写Movies的例子时发现碟片没有是蓝光的记录。
问题2解决方案:由于这个例子涉及到了两个类,排查起来很麻烦,经过我的不懈努力后来发现是在DVD类中的构造函数中少打了一个"r"改正后修复了。
代码托管
上周考试错题总结
错题一
解析:这道题考察的是定义大意是系统在没有条件语句的情况下按顺序执行的形式称为什么正确答案应该选控制流但是我选了顺序性,这是对概念理解不清。
错题二
解析:这道题考察的是对条件语序的理解,当时并没有太多的时间去考虑这道题问的是,下列哪种条件语句在x为正数的时候让x加一,在x为负数的时候让x减一,在x为0的时候让x等于零。我选的时候,没有考虑到这是一道类似脑筋急转弯的问题,当x既不是正数也不是负数的时候那么,x只能是零,不需要额外定义。
错题三
我找了很多翻译也没有找到Interator这个单词,不禁让我对java起了深深的敬畏居然连最全的英语词汇书和网络也找不到这个单词(注:应该是打错了)。
错题四
解析:关于复选框的内容老师并没有让学习,不知道为什么会出题,总之这次的java考试真的是漏洞百出,所以我没什么好说的。
错题五
解析:这道题,问的是在C语言中可以用数字表示true或者false,而在java中也可以,应该选false,因为在java中能输出布尔型的只有布尔型变量,或者布尔表达式。
错题六
解析:这道题是我想错了,我以为会按顺序执行每一条case分句,却没想到,switch循环会先执行符合条件的哪一个case分句在按顺序执行。
错题七
:解析:这道题在else部分中没有给出变量名和书上的不一样,所以我无法判断对错,现在知道了。
错题八
解析:这道题真的没有什么好讲的,一个简单的累加运算,小学题目,我应该是点错了。
错题九
解析:这道题也应该是我想错了。应该是十一次。
结对及互评
点评过的同学的博客
- 20172301
- 博客中值得学习的或问题
- 排版精美,内容充实,能基本反应出本周的学习内容和问题。而且commit的message也很准确,真正做到了一个例子一次提交的粒度。
不足之处,在教材问题二的答案中略显简略。而且错题的解答不是很美观,排版略显不足。
- 20172328
- 馨雨同志的博客内容详实,详略得当,有一种认真负责的态度。
不足之处,应该加强一下排版。
其他(感悟、思考等,可选)
本周的学习还算轻松,不过在经过前几章的积淀后明显感觉到了编项目时的压力,越来越难了。无语。
学习进度条
代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长 目标 5000行 30篇 400小时 第一周 75/200 1/2 20/20 第二周 338/500 1/4 18/38 第三周 516/1000 1/7 22/60 第四周 1296/1300 1/4 30/90 第五周 615/2839 1/5 20/110 第六周 610/3449 2/7 20/130 计划学习时间:20小时
实际学习时间:20小时
参考资料
- 《Java程序设计与数据结构教程(第二版)》
《Java程序设计与数据结构教程(第二版)》学习指导