20162301 课上测试 泛型类-Bag

20162301 课上测试 泛型类-Bag

题目及要求

  1. 代码运行在命令行中,路径要体现学号信息,IDEA中,伪代码要体现个人学号信息;
  2. 参见Bag的UML图,用Java继承BagInterface实现泛型类Bag,并对方法进行单元测试(JUnit),测试要涵盖正常、异常情况、边界情况;
  3. 课上提交测试代码和测试运行的结果截图,截图要求全屏截图,包含自己的学号信息,否则无效;测试Bag类的代码中至少包含一个自定义类如Student;
  4. 课下完成码云上代码的上传。
  • Bag的UML图:

思路

  • 参考了刘伟康同学的思路,BagInterface是老师已经给的,那么就要用Java继承BagInterface实现泛型类Bag。首先使用private Object food[] = new Object[5];使用 Object 类定义数组,当加入一项时数组中对应位置改为true。
    public boolean isEmpty() {
        boolean b = true;
        for (Object i : food) {
            if (i != null) {
                b = false;
                break;
            }
        }
        return b;
    }

     public boolean add(T t) {
        boolean b = false;
        for (Object i : food) {
            if (i == null) {
                for (int j = 0; j < food.length; j++) {
                    if (food[j] == null) {
                        food[j] = t;
                        break;
                    }
                }
                b = true;
                break;
            }
        }
        return b;
    }

测试截图

时间: 2024-10-08 21:59:59

20162301 课上测试 泛型类-Bag的相关文章

2017-2018-1 20155318 《信息安全系统设计基础》第十周课上测试及课下作业

2017-2018-1 20155318 <信息安全系统设计基础>第十周课上测试及课下作业 课上测试 解析:填充消除了冲突不命中,对于x和y数组,只有在引用第0个和第4个元素的时候发生不命中.因而命中率为75%. 解析:高速缓存容量为2048,高速缓存结构为(( 32 ),8,8,32) 解析:不同层之间是以块为大小传输单元在层与层之间复制,空缓存的不命中叫强制性不命中或冷不命中 解析:存储器层次结构的每一层都缓存来自较低一层的数据.缓存存储器是分块的,数据总是以块为基本单位在每一层之间传递,

20155204 信息安全系统设计 第十周 课上测试补交

20155204 信息安全系统设计 第十周 课上测试补交 我的答案:D 我的答案:ACD 我的答案:ACD 我的答案:ABC 我的答案:ABCD 我的答案:A 我的答案:C 我的答案:C 我的答案:C 我的答案:ABD 我的答案:ABCD 我的答案:B 我的答案:A 我的答案:ABC 我的答案:C 我的答案:ACD 我的答案:BDE 我的答案:CE 我的答案:C 我的答案:ADEG 我的答案:BCD 总分:16

# 20155337 2017-2018 1 课上测试、课下作业、实验

20155337 2017-2018 1 课上测试.课下作业.实验 第一周 学习总结 第二周 课堂实践 第三周 学习总结 第四周 学习总结+myod 第五周 学习总结 课堂实践 第六周 学习总结 实验一 第七周 学习总结 实验二 第八周 加分项目pwd 第九周 学习总结 第十周 实验三 第十一周 学习总结

2018-2019-1 20165318《信息安全系统设计基础》第八周课上测试

2018-2019-1 20165318<信息安全系统设计基础>第八周课上测试 测试-1-ch03 任务详情 通过输入gcc -S -o main.s main.c,将下面c程序"week04学号.c"编译成汇编代码 int g(int x) { return x+3; } int f(int x) { int i = 学号后两位: return g(x)+i; } int main(void) { return f(8)+1; } 删除汇编代码中 . 开头的代码,提交f函

int Integer(课上测试)

int Integer(课上测试) int和Integer有什么区别和联系? 在jshell中或者建立一个测试类测试下面两段代码,结果是什么?解释一下为什么. ------------------------------- Integer i1 =100; Integer i2 =100; if (i1 == i2){ System.out.println("i1 == i2"); } else { System.out.println("i1 != i2"); }

week14课上测试

说明 本次测试老师将所有课下测试的易错题全部重新考察了一遍,虽然是第二次做,还提前复习过,还是错了很多,回到寝室发现老师还没有结束测试,43分的我又忍不住再做了一遍. 做第二遍发现了有几个题目是蓝墨云上答案错误,老师在课上纠正过的,我还是和蓝墨云上的一样的答案,在做第二遍的时候特意改了一下. 题目 (多选题|1分)假设用ADD指令完成C表达式t=a+b的功能,有关条件码寄存器的说法正确的是() A.若t==0,则ZF=1 B.若t<0, 则CF=1 C.若t<0, 则SF=1 D.若(a<

20165305 苏振龙《Java程序设计》第四周课上测试补做

第一次测试 第二次测试 第三次测试 上传代码 第四次测试 总结 之前我一直在git bash进行程序设计,但是对于我来说操作起来有点困难,所以我改用了虚拟机,之后之前一直困扰我的问题在虚拟机下就没有了,而且一些·不要能进行的操作例如"tree","jdb调试"等都可以顺利进行.在上一周的课上试验中因为在用git bash运行代码时总是出现不识别的地方,并且也一直没有很好的解决,在以后的学习中我会多留意一些,看是否能找到解决方法. 原文地址:https://www.c

java课上测试心得

放暑假之前,建民老师就给我们布置了每一天学习两小时的代码,但是自己的不重视,根本就没有达到这个要求,简单学了一点点基本的东西,然后在开学的第一堂课上,连续三个小时的敲代码,让我意识到了自己的问题,一个系统,很多功能都没有实现,真正的感受到了付出与不付出最后的感觉,所以新学期的开始,自己就一定要有自己的规划 . 第一,   在上半年,就听到过建民老师说过一万小时定律,只有真正做一件事情达到一万个小时才能说自己对着一件事情非常的熟悉,而仔细算一算,自己想要在在即大学毕业之前达到一万个小时的目标,每一

第八周课上测试ch03

测试-1-ch03 任务详情 通过输入gcc -S -o main.s main.c,将下面c程序"week04学号.c"编译成汇编代码 int g(int x){ return x+3; } int f(int x){ int i = 学号后两位: return g(x)+i; } int main(void){ return f(8)+1; } 删除汇编代码中 . 开头的代码,提交f函数的汇编代码截图,图中用矩形标出函数栈帧的形成和销毁的代码 知识点 C语言调用机制使用了栈数据结构