201671010111 2016-2017-2《面向对象的程序设计》 集合的学习

         本周的理论课是讲解了前面我们在程序设计中遗留的普遍性问题,那么我们的新知识第九章《集合》的学习就放到了周五的实验课上,其实这种授课方式似乎更能掌握到知识点,讲完理论知识后,就通过调试程序的方法巩固知识点。可以当堂据发现问题,可以使得问题及时的得到解决。以使得我们更好的掌握到新的知识,也可以在课堂上就完成一部分的作业练习,有更充足的时间,总结知识点。

         本章学习内容为集合以及集合框架,集合可包含多个元素并提供对所包含元素操作方法的类,其包含的元素可以由同一类型的对象组成,也可以由不同类型的对象组成。集合框架为一个类库的集合,可实现各种数据结构的封装。集合类有两个特点,第一是只容纳对象以及第二是所容纳对象都是object类的实例。集合中的迭代器,和C语言中的递归相类似。

       其中的Stack方法vector的子类,所以在程序中Stack可以使用vector的所有方法。stack的关键方法有入栈push、出栈pop、探查peek和判空empty。List有两种类型,静态数组Arraylist和动态链表linkedlist,其中Arraylist的访问用下标访问的方式,linkedlist则为双向循环。

   本周的实验作业是较为简单的通过程序的调试,理解程序,思考代码的作用以及功能。但是我们却在程序9-2的调试中遇到了问题,我们发现程序用到了异常捕获中的积极处理方法try和catch。但是程序中只有try却没有catch,删去try后也是无法运行,加上catch还是无法运行。最终是老师给我一位舍友在博客上给出了方法讲解,在输入少于20个字母的单词后按ctrl z键结束。然后在运行过程中仍然存在无输出结果的现象,在多次尝试后终于有了结果。

原文地址:https://www.cnblogs.com/JINRENQIANCAO/p/7784937.html