《软件构造》Lab 2总结思考

一、实验概述
1.Poetic Walks
一个图形接口,两个具体实现类ConcreteEdgesGraph,ConcreteVerticesGraph。实现类实现了接口的一系列方法,并重写了toString方法,接着进行泛型化,最后一步是基于之前的具体实现完成poet任务。
2.对于实验一中的social network,结合实验二第一部分,将ConcreteEdgesGraph的L变为Person,实现相同功能。
在这里插入图片描述

二、实验中遇到的问题和总结思考(重要)
1.最浪费时间的一个问题是关于remove函数,最早使用for(Edge edge:edges)
找到关联边就删除,但是测试总是出错,最后找到原因是删除了一个edge后for-each循环的逻辑就会出错,无法再找到下一个edge。

解决方法:
在这里插入图片描述
先进行一份copy然后遍历copy,删除的确实实际的edges中的元素,便可以避免之前的问题,后来了解到,可以直接用迭代器实现同样效果。

2.FriendshipGraphTest测试没想到如何进行

FriendshipGraph中:
在这里插入图片描述

FriendshipGraphTest中:
FriendshipGraph graph=new FriendshipGraph();
ConcreteEdgesGraph g=graph.getGraph();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值