20162320刘先润第三周Bag类测试
前言
以下内容是本周Bag代码的课后作业,要求是完成伪代码、产品代码和测试代码,为了书写方便我将伪代码以注释的形式写在了产品代码的后面
测试步骤
1.首先对Bag类引用BagInterface的代码进行复写
2.查阅读Baginterface中需要实现方法的要求,并查找ArrayList中方法的说明,写出如下代码
public class Bag<T> implements BagInterface<T> { //公共接口
ArrayList<T> lxr=new ArrayList<T>();//新声明一个变量
@Override
public int getCurrentSize() {//返回lxr的容量
return lxr.size();
}
@Override
public boolean isEmpty() {//检查Bag是否为空
return lxr.isEmpty();
}
@Override
public boolean add(T newEntry) {//增加一个可进行添加任何东西T的方法add
lxr.add(newEntry);
return false;
}
@Override
public T remove() {
return null;
}
@Override
public boolean remove(T anEntry) {//移除anEntry
lxr.remove(anEntry);
return false;
}
@Override
public void clear() {//移除列表的所有元素
lxr.clear();
}
@Override
public int getFrequencyOf(T anEntry) {//返回一个元素在Bag中出现的次数
int a=0;
for(int i=0;i<lxr.size();i++)
{
if (anEntry==lxr.get(i)){
a++;
}
}
return a;
}
@Override
public boolean contains(T anEntry) {//如果此列表中包含指定的元素,则返回 true。
lxr.contains(anEntry);
return false;
}
}
3.编写JUNIT3测试代码
首先在Bag中放入6个元素,为了方便测试,删去最后一个元素
Bag mybags = new Bag();
mybags.add("book1");
mybags.add("book2");
mybags.add("book3");
mybags.add("book4");
mybags.add("book1");
mybags.add("SB");
mybags.remove("SB");
然后测试getCurrentSize(),assertEquals(5,mybags.getCurrentSize());测试是否为5个元素。
测试bag中的内容是否为空,assertEquals(mybags.isEmpty(),false);
测试add方法,检查Bag中是否含有book1,assertEquals(true,mybags.contains("book1"));
测试remove方法,检查Bag中是否含有“SB”,assertEquals(true,mybags.contains("SB"));
测试GetFrequencyOf,检查book1出现的次数是否为2,assertEquals(2,mybags.getFrequencyOf("book1"));

最后测试clear方法
mybags.clear();
assertEquals(true,mybags.isEmpty());

测试完成
我的码云Bag
测试代码
20162320刘先润第三周Bag类测试的更多相关文章
- MOOC C++笔记(三):类和对象提高
第三周:类和对象提高 this指针 作用 this指针作用就是指向成员函数所作用的对象. 非静态成员函数中可以直接使用this来代表指向该函数作用的指针. 成员函数中默认有一个this指针指向当前对象 ...
- 20162330 第三周 蓝墨云班课 泛型类-Bag 练习
目录 题目及要求 思路分析 遇到的问题和解决过程 代码实现及托管链接 感想 参考资料 题目及要求 代码运行在命令行中,路径要体现学号信息,IDEA中,伪代码要体现个人学号信息: 参见Bag的UML图, ...
- 2017-2018-1 Java演绎法 第三周 作业
团队任务:团队展示与选题 团队展示 队员学号及姓名 学号 姓名 主要负责工作 20162315 马军 日常统计,项目部分代码 20162316 刘诚昊 项目部分代码,代码质量测试 20162317 袁 ...
- 20145213《Java程序设计》第三周学习总结
20145213<Java程序设计>第三周学习总结 教材学习内容总结 正所谓距离产生美,上周我还倾心于Java表面的基础语法.其简单的流程结构,屈指可数的基本类型分类,早已烂熟于心的运算符 ...
- 20145304 Java第三周学习报告
20145304 <Java程序设计>第三周学习总结 教材学习内容总结 1.定义类: 类定义时使用class关键词,建立实例要使用new关键词. 代码如下: /*定义类 书上例子 衣服的型 ...
- 20145330《Java程序设计》第三周学习总结
20145330 <Java程序设计>第三周学习总结 第三周知识的难度已经逐步上升,并且一周学习两章学习压力也逐渐加大,需要更高效率的来完成学习内容,合理安排时间. 类与对象 对象(Obj ...
- 20145337《Java程序设计》第三周学习总结
20145337 <Java程序设计>第三周学习总结 教材学习内容总结 类与对象 类与对象的关系:要产生对象必须先定义类,类是对象的设计图,对象是类的实例.我觉得在视频中对类与对象关系的描 ...
- 20145218 《Java程序设计》第三周学习总结
20145218 <Java程序设计>第三周学习总结 教材学习内容总结 定义类 编写程序要产生对象就要先定义类.类是对象的设计图,对象是类的实例.类定义时使用class关键词,建立实例时, ...
- 《Java程序设计》第三周学习总结
20145224-陈颢文 <Java程序设计>第三周学习总结 教材学习内容总结 一.定义类: ·类定义时使用class关键字,要对类中变量(值域成员/对象数据成员)行类型声明. class ...
随机推荐
- 畅通工程 HDU - 1863
省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路的若干条道 ...
- 从输入URL到页面加载的过程?如何由一道题完善自己的前端知识体系!
前言 见解有限,如有描述不当之处,请帮忙指出,如有错误,会及时修正. 为什么要梳理这篇文章? 最近恰好被问到这方面的问题,尝试整理后发现,这道题的覆盖面可以非常广,很适合作为一道承载知识体系的题目. ...
- [BZOJ3224] [Tyvj 1728] 普通平衡树 (treap)
Description 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相 ...
- MongoDB存储引擎(中)——WiredTiger
上一篇博文介绍了MongoDB的MMAPv1存储引擎,本文接着介绍MongoDB另一个存储引擎--WiredTiger,WiredTiger是在MongoDB3.0版本引入的,并且在MongoDB3. ...
- Java中常见数据结构Map之LinkedHashMap
前面已经说完了HashMap, 接着来说下LinkedHashMap. 看到Linked就知道它是有序的Map,即插入顺序和取出顺序是一致的, 究竟是怎样做到的呢? 下面就一窥源码吧. 1, Link ...
- 【Unity与23种设计模式】责任链模式(Chain of Responsibility)
GoF中定义: "让一群对象都有机会来处理一项请求,以减少请求发送者与接收者之间的耦合度.将所有的接受对象串联起来,让请求沿着串接传递,直到有一个对象可以处理为止." 举个现实中的 ...
- 设计模式——享元模式(C++实现)
#include <iostream> #include <string> #include <map> #include <vector> #incl ...
- 共享MFC每周时间选择控件代码
自己写的周时间选择控件,原理就是在Static上用GDI画图. 支持选择每周内每一天内的任意时间段,可以任意拖动修改时间段,任意合并时间段 效果如下图: VS2012代码下载:https://gith ...
- SpringBoot(四)SpringBoot中lombok使用
lombok概述 lombok简介 Lombok想要解决了的是在我们实体Bean中大量的Getter/Setter方法,以及toString, hashCode等可能不会用到,但是某些时候仍然需要复写 ...
- Spark ML源码分析之二 从单机到分布式
前一节从宏观角度给大家介绍了Spark ML的设计框架(链接:http://www.cnblogs.com/jicanghai/p/8570805.html),本节我们将介绍,Spar ...