课时136:空集合判断

简介: 课时136介绍空集合的判断方法。首先定义空集合:链表中无任何数据即为空集合。接着在ILink接口中添加`isEmpty()`方法,用于判断链表是否为空,并在LinkImpl子类中实现该方法,可通过检查根元素是否为null或数据个数是否为0来实现。最后通过测试代码验证`isEmpty()`方法的有效性,成功实现了判断链表是否为空集合的功能。

课时136:空集合判断

摘要:

1. 空集合的定义

2.判断空集合方法

01. 空集合的定义

 

链表里面可以保存若干个数据,如果现在的链表中没有任何数据,则表示该链表是一个空集合。 因此,我们需要提供一个方法来判断链表是否为空。 这类似于字符串中的isEmpty() 方法。

 

02. 判断空集合方法

 

1在 ILink 接口中添加一个判断是否为空集合的方法:

interface ILink<E> {//设置范型避免安全隐患
    public  void  add(E e);//增加数据的个数
    public int size();//获取数据的个数
    public boolean isEmpty(); // 判断是否为空集合
}

 

2在 LinkImpl子类中覆写此方法

判断空集合有多种方法:

public boolean isEmpty(){
//return this.root == null;// 判断根元素是否为空
    return this.count==0;// 判断数据的个数是否为 0
}

注:这两种方法的本质是一样的。

 

3测试isEmpty方法

public class LinkDemo {
    public static void main(String[] args) {
        ILink<String> all = new LinkImpl<String>();
        System.out.println("【增加之前】数据个数:" + all.size()+"、是否为空集合:"+all.isEmpty());
        all.add("Hello");
        all.add("World");
        all.add("MLDN");
        System.out.println("【增加之后】数据个数:" +  all.size()+"、是否为空集合:"+all.isEmpty());
    }
}

结果如下:

image.png

 

通过以上步骤,成功地实现了判断链表是否为空集合的功能。

相关文章
|
5月前
|
人工智能 自然语言处理 Cloud Native
Bolt.diy 评测方案:从部署到创意实践的全方位探索
Bolt.diy 是阿里云推出的低代码开发平台,基于函数计算(FC)与百炼大模型服务构建。它通过自然语言交互、全栈开发支持及快速云端部署,让开发者和非技术人员能轻松实现创意落地。本文详细解析了 Bolt.diy 的部署流程、功能实践与应用场景,并结合测试案例探讨其价值与优化方向。无论是在教育、企业内部工具定制还是个人兴趣开发中,Bolt.diy 均展现出高效便捷的优势,但复杂业务需求仍需传统工具补充。未来,随着大模型能力升级,Bolt.diy 将进一步推动 AI 辅助开发的发展。
|
9月前
|
存储 安全 Java
什么?CPU消耗要压降80% ——《事件序列化CPU开销压降》揭榜
本文为《事件CPU开销压降》揭榜报告,旨在解决风控系统间信息传递时事件体持续膨胀导致的序列化/反序列化CPU消耗过高的问题。
222 12
|
11月前
|
存储 运维 NoSQL
Redis为什么最开始被设计成单线程而不是多线程
总之,Redis采用单线程设计是基于对系统特性的深刻洞察和权衡的结果。这种设计不仅保持了Redis的高性能,还确保了其代码的简洁性、可维护性以及部署的便捷性,使之成为众多应用场景下的首选数据存储解决方案。
147 1
|
缓存 应用服务中间件 Apache
缓存代理服务器的实现机制和技术选型
缓存代理服务器是一种特殊的代理服务器,其主要功能是缓存从目标服务器(通常是Web服务器)获取的数据,并在客户端再次请求相同数据时直接提供缓存的数据。通过缓存代理服务器可以加快访问速度并减轻目标服务器的负载。
517 103
|
安全 测试技术 网络架构
【专栏】编写网络设备割接方案的七个步骤,包括明确割接目标、收集信息、制定计划、设计流程、风险评估、准备测试环境和编写文档。
【4月更文挑战第28天】本文介绍了编写网络设备割接方案的七个步骤,包括明确割接目标、收集信息、制定计划、设计流程、风险评估、准备测试环境和编写文档。通过实际案例分析,展示了如何成功完成割接,确保业务连续性和稳定性。遵循这些步骤,可提高割接成功率,为公司的网络性能和安全提供保障。
1407 0
Mybatis-plus-generator代码自动生成工具
Mybatis-plus-generator代码自动生成工具
245 0
|
11月前
|
机器学习/深度学习 传感器 数据采集
使用Python实现深度学习模型:智能设备故障预测与维护
【10月更文挑战第10天】 使用Python实现深度学习模型:智能设备故障预测与维护
1556 2
|
11月前
|
消息中间件 监控 Go
Go语言在微服务架构中的优势与实践
【10月更文挑战第10天】Go语言在微服务架构中的优势与实践
|
Java 持续交付 Maven
云效产品使用常见问题之流水线的容器读取本地的挂载文件失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。

热门文章

最新文章