收藏 分享(赏)

java实验泛型与集合类.doc

上传人:Wallisgabriel 文档编号:21759306 上传时间:2024-04-22 格式:DOC 页数:10 大小:104KB
下载 相关 举报
java实验泛型与集合类.doc_第1页
第1页 / 共10页
java实验泛型与集合类.doc_第2页
第2页 / 共10页
java实验泛型与集合类.doc_第3页
第3页 / 共10页
java实验泛型与集合类.doc_第4页
第4页 / 共10页
java实验泛型与集合类.doc_第5页
第5页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、电子信息学院实验报告书课程名: 软件开发基础Java(2) 题 目: 实验04 泛型与集合类 实验类别: 【设计】 班 级: 软件1412 学 号: 141003330212 姓 名: 张杨松 评语:实验态度:认真( ) 一般( ) 较差( )实验结果:正确( ) 部分正确( ) 错( )实验理论:掌握( ) 熟悉( ) 了解( ) 生疏( )操作技能:较强( ) 一般( ) 较差( )实验报告:较好( ) 一般( ) 较差( )成绩: 指导教师: 王中华 实验时间: 2015年4月22日一、实验目的(1)掌握集合的概念、体系结构、分类及使用场景;(2)了解Set接口及主要实现类(HashSe

2、t、TreeSet);(3)了解List接口及主要实现类(ArrayList、LinkedList、Vector);(4)掌握ArrayList的使用,以及ArrayList与Vector的区别;(5)了解Map接口及主要实现类(HashMap、TreeMap、HashTable);(6)掌握HashMap的使用,以及HashMap与HashTable的区别。二、实验内容(1)编写程序练习List集合的基本使用: 创建一个只能容纳String对象名为names的ArrayList集合; 按顺序往集合中添加5个字符串对象:“张三”、“李四”、“王五”、“马六”、“赵七”; 对集合进行遍历,分别打

3、印集合中的每个元素的位置与内容; 首先打印集合的大小,然后删除集合中的第3个元素,并显示删除元素的内容,然后再打印目前集合中第3个元素的内容,并再次打印集合的大小。(2)编写程序练习Map集合的基本使用: 创建一个只能值只能容纳String对象的Person的HashMap集合; 往集合中添加5个“键值”对象:id001、name张三、sex男、age28、love我爱学Java; 对集合进行遍历,分别打印集合中的每个元素的键与值; 首先打印集合的大小,然后删除集合中的键为age的元素,并显示删除元素的内容,并再次打印集合的大小。(3)编写Java应用程序,使用Vector向量来保存用户输入的

4、若干个字符串。循环读入用户输入的字符串,以end结束。将所有字符串显示出来。在所有字符串的中间位置插入“NICE”,再次显示所有字符串。(4)应用泛型编写一个Java程序,输出三角形、长方形、正方形及圆的面积。要求:首先定义一个接口,该接口中包含一个计算图形面积的方法;其次,定义四个类分别表示三角形、长方形、正方形和圆,在类中分别实现不同图形面积的计算方法;最后,应用泛型可以在控制台输出各种不同图形的面积。三、实验结果(关键代码和运行结果)import java.util.ArrayList;import java.util.List;/* * 测试容器类ArrayList和接口List以及相

5、关的方法运用 * * author Administrator * */public class DemoArrayList DemoArrayList() / 创建一个只能容纳String对象名为names的ArrayList集合;List names = new ArrayList();names.add(张三);names.add(李四);names.add(王五);names.add(马六);names.add(赵七);/ 对集合进行遍历,分别打印集合中的每个元素的位置与内容;for (int i = 0; i + names.get(i);/ 打印集合的大小System.out.pr

6、intln(改变前的容器大小为: + names.size();/ 删除集合中的第3个元素System.out.println(删除的第三个元素为: + names.remove(3);/ 打印目前集合中第3个元素的内容System.out.println(第三个元素为: + names.get(3);/ 打印集合的大小System.out.println(改变后的容器大小为: + names.size();public static void main(String args) new DemoArrayList();import java.util.HashMap;import java.

7、util.Map;/* * (2)测试Map集合的基本使用 * * author Administrator * */public class DemoHashMap DemoHashMap() Map Person = new HashMap();Person.put(id, 001);Person.put(name, 张三);Person.put(sex, 男);Person.put(age, 28);Person.put(love, 我爱Java);/ 对集合进行遍历,分别打印集合中的每个元素的位置与内容;System.out.println(id- + Person.get(id);S

8、ystem.out.println(name- + Person.get(name);System.out.println(sex- + Person.get(sex);System.out.println(age- + Person.get(age);System.out.println(love- + Person.get(love);/ 打印集合的大小System.out.println(改变前的容器大小为: + Person.size();/ 删除集合中的键为age的元素System.out.println(刪除的值为: + Person.remove(age);/ 打印集合的大小Sy

9、stem.out.println(改变后的容器大小为: + Person.size();public static void main(String args) new DemoHashMap();import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Iterator;import java.util.Vector;/* * 测试Vector容器的基本用法 * * author Administrator 1 2 4 5 */publi

10、c class DemoVector BufferedReader br = null;/* * 获取一个Vector容器 * * return */public Vector getVector() String str;/ 循环读入用户输入的字符串br = new BufferedReader(new InputStreamReader(System.in);Vector vector = new Vector();try while (!(str = br.readLine().equals(end) vector.addElement(str); catch (IOException

11、e) e.printStackTrace();System.out.println(-);System.out.println(插入前容器的元素有:);showInfo(vector);/ 在所有字符串的中间位置插入“NICE”vector.insertElementAt(NICE, vector.size() / 2);return vector;/* * 遍历容器中的元素 * * param v */public void showInfo(Vector v) Iterator i = v.iterator();while (i.hasNext() System.out.println(i

12、.next();public static void main(String args) DemoVector dv = new DemoVector();Vector vector = dv.getVector();System.out.println(-);System.out.println(插入元素后容器的元素为:);dv.showInfo(vector);/* * 测试泛型的使用接口 * * author Administrator * */interface ShapeAreaPeri double getArea();class Triangle implements Shape

13、AreaPeri double a, b, c;Triangle(double a, double b, double c) this.a = a;this.b = b;this.c = c;public double getArea() double rp = (a + b + c) / 2.0;return Math.sqrt(rp - a) * (rp - b) * (rp - c);class Rectangle implements ShapeAreaPeri double width, length;Rectangle(double w, double l) width = w;l

14、ength = l;public double getArea() return width * length;class Circle implements ShapeAreaPeri double ridus;final double pi = 3.14;Circle(double r) ridus = r;public double getArea() return pi * ridus * ridus;public class TestGeneric public void test(ShapeAreaPeri sap) System.out.println(所在图形的面积为: + sap.getArea();public static void main(String args) Triangle t = new Triangle(1.1, 2.0, 3.0);Circle c = new Circle(1.2);Rectangle r = new Rectangle(1.2, 1.4);TestGeneric tg = new TestGeneric();tg.test(t);tg.test(c);tg.test(r);四、实验体会

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高中资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报