
实验05 Java集合文档。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
掌握集合的定义、结构、分类以及其应用场景。其次,需要深入理解Set接口及其主要实现类,包括HashSet、TreeSet。此外,还需要熟悉List接口及其主要实现类,例如ArrayList、LinkedList和Vector。最后,要理解Map接口及其主要实现类,如HashMap、TreeMap和HashTable。
接下来是实验内容及步骤:首先,编写程序练习将以下5个Person类的对象放入一个HashSet中。Person类的对象包含姓名(name)和身份证号(id)属性。请注意,由于Person类是自定义类,因此必须重写hashCode()和equals()方法,并明确规定只有当姓名和身份证号都相等时,两个对象才被认为是相等的。计算哈希码的算法为:(31 + ((name == null) ? 0 : name.hashCode())) * 31 + id。主方法中进行如下测试:1)创建一个可容纳Person类对象的HashSet;2)依次将上述5个对象添加到HashSet中;3)使用迭代器Iterator打印HashSet中的所有元素。
其次,编写程序练习List集合的基本使用:1) 创建一个名为names的ArrayList集合,该集合只能存储String对象;2) 按照指定顺序将5个字符串对象“张三”、“李四”、“王五”、“马六”、“赵七”依次添加到集合中;3) 对集合进行遍历,并分别打印每个元素的位置索引与内容;4) 打印集合的大小,随后删除集合中的第三个元素并显示被删除的元素内容;5) 再一次打印集合中的第三个元素的内容以及当前集合的大小。
最后,编写程序练习Map集合的基本使用:1)创建一个名为person的HashMap集合,该集合只能存储String类型的键值对;2)往HashMap中添加5个“键-值”对象:“id”对应“1”,“name”对应“张三”,“sex”对应“男”,“age”对应“25”,“hobby”对应“爱学Java”;3)对HashMap进行遍历,并分别打印每个元素的键和值;4)打印HashMap的大小,然后删除包含键为“age”的元素及其对应的值(即删除年龄信息),并显示被删除的信息;5) 最后再次打印HashMap的大小。
在思考题部分:1) 比较List、Set和Map这三种不同类型的集合的区别;2) 探讨为什么应该尽可能地使用集合框架而不是直接使用数组作为数据存储结构?3) 如何利用TreeSet来实现第一题中的需求?
全部评论 (0)


