数据结构基础

1.判断是否为空

大家都知道判断字符串是否为空:
str == null || "".euqals(str) || str.length <= 0 || str.isEmpty(),
首先需要判断在内存中是否有指向,即是否是一个对象,然后判断该字符串是否为空字符串。
同理:

判断数组为空:arr ==null || arr.length ==0

同理不为空:arr != null && arr.length>0

判断List为空:null == list || list.size() == 0 || list.isEmpty()

判断List不为空:list != null && !list.isEmpty()
 
判断Map为空:null == map || map.size() == 0 || map.siEmpty()

判断Map不为空:map != null && !map.isEmpty()

判断Set为空:null == set || set.size() == 0 || set.siEmpty()

判断Set不为空:set != null && !set.isEmpty()

2.常用类库

(一)List是元素有序、可重复、可为null的集合;

①ArrayList 
继承AbstractList实现了List、RandomAccess、Cloneable、Serializble等接口。
特性:本质是一个数组;可被随机访问、能被克隆、支持序列化、容量可以动态增长、非线程安全

②LinkedList 
继承AbstractSequentialList实现了List、Deque、Cloneable、Serializable等接口。
特性:本质是一个双向链表;支持序列化,能被克隆,非线程安全的。

③Vector 
继承AbstractList实现了List、RandomAccess、Cloneable等接口。
特性:本质是一个队列;可被随机访问,能被克隆,且线程安全。

④Stack 
继承于Vector,读者可参考上
特性:本质是一个栈,具有"先进后出"的特性。

(二)Map是有映射关系的键值对的集合

①HashMap
继承AbstractMap实现了Map、Cloneable、Serializable等接口;非线程安全

②HashTable
继承Dictionary实现Map、Cloneable、Serializable等接口;线程安全

③TreeMap
继承AbstractMap实现NavigableMap、Cloneable、Serializable等接口;非线程安全

④LinkedHashMap
LinkedHashMap是HashMap的子类;基本特性和使用与HashMap保持一致。对于Map而言,如果项目中要求输入的顺序和输出的相同,此时即可使用LinkedHashMap实现。

文章链接: https://www.mfisp.com/22184.html

文章标题:数据结构基础

文章版权:梦飞科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
未分类

使用裸机云的优势有哪些

2023-7-14 18:01:41

未分类

云的优点和缺点

2023-7-21 14:01:51

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

梦飞科技 - 最新云主机促销服务器租用优惠