JAVA内置类使用方法记录

Array数组

普通数组是基本类型,例如int[] 就像是;一个装着元素排列整齐的盒子,他没有size(),length()等方法,但是存在length属性。

  1. Array.sort()
    这是专门排序数组的方法,但是前提是你必须给数组存储的元素继承并定义comparable方法,或者可以使用自定义比较器,如Arrays.sort(arr,new comparator());

List

ArrayList是动态数组的实现类,达到0.75会自动扩容。
1.add
add(E element)
将指定的元素添加尾部。
add(int index,E element)
将指定元素添加到指定位置
2.remove
remove(int index)
移除指定位置的元素
remove(object o)
移除第一个匹配项
3.get(int index)
返回指定位置的元素
4.indexOf(object o)
返回第一个匹配的索引,如果没有则返回-1
5.set(int index,objct o)
将指定位置元素替换为指定元素
6.size()
返回大小
7.isEmpty()
返回是否为空
8.toArray()
返回包含表里所有元素的数组

Map

HashMap<object,object>

映射关系表,理论查询时间复杂度是P(1)

  1. containsKey(object o)
    返回是否包含该键
  2. put(object o1,object o2)
    向该map添加键值对
  3. get(object o)
    查看该键的值,如果没有,则null

treeMap<object,object>

含有键值对的map,其已排序
TreeMap中的键必须实现Comparable接口,或者提供一个Comparator对象来定义键的排序规则,否则会抛出NullPointerException。
TreeMap是非同步的,如果需要线程安全,可以使用Collections.synchronizedSortedMap()方法。
TreeMap的底层实现是红黑树,因此插入、删除、查找等操作的时间复杂度为O(log n)。
使用默认构造函数:

TreeMap<KeyType, ValueType> map = new TreeMap<>();

此时,TreeMap中的元素将按照键的自然顺序(即键必须实现Comparable接口)进行排序。
通过传入一个Comparator对象,可以自定义键的排序规则。
使用带有比较器的构造函数:

TreeMap<KeyType, ValueType> map = new TreeMap<>(Comparator<KeyType> comparator);
  1. put get size方法同HashMap
  2. remove(object o)
    移除指定元素
  3. clear()
    清空一切
  4. floorKey(object o)
    找到小于等于o最接近的元素,比较规则取决于指定的比较器
  5. ceilingKey(object o)
    找到大于等于o最接近的元素

Set

TreeSet

TreeSet 是 Java 中 java.util 包中的一个类,它实现了 NavigableSet 接口,并且基于红黑树(Red-Black Tree)数据结构来存储元素。TreeSet 保证了元素的唯一性和自然排序(或者根据提供的比较器进行排序)。以下是一些常用的 TreeSet 方法:

TreeSet不可以包含多个值相同的元素
构造器:
TreeSet(Comparator<? super E> comparator)
创建一个空的 TreeSet,使用指定的比较器对元素进行排序。

  1. boolean add(E e)
    将指定的元素添加到集合中(如果该元素尚未存在于集合中)。
  2. void clear()
    移除集合中的所有元素。
  3. Object first()
    返回集合中的第一个(最低)元素。
  4. Object last()
    返回集合中的最后一个(最高)元素。
  5. boolean contains(Object o)
    检查集合中是否包含指定的元素。
  6. boolean isEmpty()
    检查集合是否为空。
  7. boolean remove(Object o)
    从集合中移除指定的元素(如果该元素存在)。
  8. int size()
    返回集合中的元素数量。
  9. E floor(E e)
    返回小于或等于指定元素的最大元素。
  10. E ceiling(E e)
    返回大于或等于指定元素的最小元素。
  11. E pollFirst()
    获取并移除集合中的第一个(最低)元素;如果集合为空,则返回 null。
  12. E pollLast()
    获取并移除集合中的最后一个(最高)元素;如果集合为空,则返回 null。

ArrayDeque 双端队列

底层通过循环数组实现,当满时,会自动扩容

Queue<Integer> queue=new ArrayDeque<>();

所有 Queue 实现类均支持以下通用方法:

方法描述异常行为(空队列时)
add(E e)入队,队列满时抛出 IllegalStateException抛出 NoSuchElementException
offer(E e)入队,队列满时返回 false返回 null(不抛异常)
remove()出队并返回队首元素抛出 NoSuchElementException
poll()出队并返回队首元素,队列空时返回 null返回 null(不抛异常)
element()返回队首元素(不移除)抛出 NoSuchElementException
peek()返回队首元素(不移除),队列空时返回 null返回 null(不抛异常)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值