课堂实验-Bag
- 这次的课堂实验比较简单,但尴尬的是竟然没有做出来,自己的代码能力下降了不少。IDEA的Junit测试出了问题。所以这次实验是和结对伙伴结对编程写的。
public class Bag<T> implements Baginterface<T> {
private ArrayList<T> mArraylist = new ArrayList<>();
@Override
public int getCurrentSize() {
return mArraylist.size();
}
@Override
public boolean isEmpty() {
if (mArraylist.size()==0){
return false;}
else
return true;
}
@Override
public boolean add(T newEntry) {
mArraylist.add(newEntry);
return false;
}
@Override
public T remove() {
if (mArraylist!=null) {
mArraylist.remove(mArraylist.size() - 1);
return null;
}
else{
return null;}
}
@Override
public boolean remove(T anEntry) {
mArraylist.remove(anEntry);
return false;
}
@Override
public void clear() {
mArraylist.clear();
}
@Override
public int getFrequencyOf(T anEntry) {
if (mArraylist.contains(anEntry)==true){
return 0;}
else return 1;
}
public void getFrenquency(T anEntry){
if (getFrequencyOf(anEntry)==0){
System.out.println("Bag has it");
}
else
System.out.println("Bag doesn't have it");
}
@Override
public boolean contains(T anEntry) {
return false;
}
}
根据接口类Baginterface的抽象方法,Bag类应该实现以下方法:
- getCurrentSize():得到Bag里面元素的个数
- isEmpty():检测Bag是否为空
- add():向Bag里面添加元素
- remove():移除Bag中的指定元素
- clear():移除Bag中的所有元素
- getFrequencyOf():检查某个元素在Bag中出现的次数
- contains():检查某个元素是否存在于Bag中

课堂实验-Bag的更多相关文章
- 课堂作业-Bag类的实现
课堂作业-Bag类的实现 要求: 代码运行在命令行中,路径要体现学号信息,IDEA中,伪代码要体现个人学号信息 参见Bag的UML图,用Java继承BagInterface实现泛型类Bag,并对方法进 ...
- 课堂实验-模拟实现Sort
课堂实验 模拟实现Linux下Sort -t : -k 2的功能.参考 Sort的实现. 代码如下: /** * Created by Administrator on 2017/5/20. */ i ...
- 课堂实验-String类和Arrays类
课堂实验 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 sort binarySea ...
- 【课堂实验】Arrays和String单元测试
实验内容 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 sort binarySea ...
- Oracle课堂实验一“表的使用”代码。
--创建本地管理表空间CustomerTBSCREATE TABLESPACE CustomerTBS DATAFILE 'd:\Oracle11\product\11.2.0\ora ...
- Java的课堂实验
题目是:用Aplet创建一个小程序,使得当你的鼠标经过图片时,放歌~ 其中,补充知识:1.MouseMotionListener这个和MouseListener这两个监听器要了解以下 2.Aplet这 ...
- 关于Java课堂实验中的一些总结(Scanner)
import java.util.Scanner; 这个头文件是java里面用来输入东西的,就相当于c++里面的iostream输入流...?暂且这么理解吧 然后使用方法:Scanner in = n ...
- 20145202马超《java》【课堂实验】P98测试
当时在加水印所以没来得及提交,然而我回宿舍第一时间就提交了,希望老师额能够看到
- 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...
随机推荐
- Let's Encrypt 免费通配 https 签名证书 安装方法
安装环境 centOs7 主要通过 acme.sh (bash脚本)来注册签名 git地址:https://github.com/Neilpang/acme.sh 申请证书流程 1.申请证书-> ...
- Vue修改mint-ui默认样式(默认风格)
加入my-mint.css 我这里用的postcss的变量定义,如果亲们用的是其他预处理器,要改成其他处理器的定义方式 覆盖mint-ui的primary颜色,改为自己UI的主题色 --main-co ...
- java检验银行卡号
/* 校验过程: 1.从卡号最后一位数字开始,逆向将奇数位(1.3.5等等)相加. 2.从卡号最后一位数字开始,逆向将偶数位数字,先乘以2(如果乘积为两位数,将个位十位数字相加,即将其减去9),再求和 ...
- long类型的数据转化为时间
long time = 111111111111111111111:SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm: ...
- shell source命令说明
当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录:这时就想到用source命令,如:source /etc/profile对source进行了学习,并且用它与sh 执行脚本进行 ...
- 修改vs17中的cordova模板
因为visual studio 2017创建的默认cordova-ios的版本自动编译带有swift语言的插件会出现异常,cordova-ios升级到4.3.1,并且配置build.json能解决问题 ...
- js弱数据类型的坑
1.从表单获取的value是字符串,如果需要为数字相加,则需要转换为number类型 <input type="number" id="val1"> ...
- 提高spring boot jpa性能(译)
Spring Data JPA为Spring应用程序提供了数据访问层的实现.这是一个非常方便的组件,因为它不会重新发明每个新应用程序的数据访问方式,因此您可以花更多时间来实现业务逻辑.使用Spring ...
- Python学习笔记——数据结构和算法(二)
1.字典中一个键映射多个值 可以使用collections中的defaultdict来实现,defalultdict接受list或者set为参数 from collections import def ...
- insta php-fpm 的配置
[global]pid = /www/wdlinux/phps/70/var/run/php-fpm.piderror_log = /www/wdlinux/phps/70/var/log/php-f ...