存放日常开发所撰写的Markdown文件。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.9 KiB

技术笔记

项目开发中,可以将一些操作通过算法来实现。来提高项目的运行占用率。提高项目的稳定性。

如:搜索。日常中,通常都是使用三方工具类或方法来实现。但这会调用到其他框架,在内存和运行中会占用一定的内存的。

想要提高稳定可以使用KMP算法来完成搜索的实现。

第二。在日常的开发中,想要将URL中的数值进行拼接和整理。也可以使用Java的字符缓存来完成。同时你也可以将递归方式来将修改的东西进行传入。这样。可以优化很多代码。

字符缓存区有两种:

  • StringBuilder 线程不安全,但效率高。
  • StringBuffer 线程安全,但效率不高。

他们这两个的底层都是新建一个数组,大小是16。当然如果有内容传入进来的话就是在内容的长度上延长16。

在这个缓冲区中,可以对字符串进行追加和删除。或者覆盖。

Collection是一组对象,这些对象称为元素。它是集合层次结构中的根接口。该接口主要用于传递和操作集合,以便实现最大的通用性。

Collection接口定义了许多方法,包括:

方法 描述
add() 如果将指定的元素插入到此集合中,则返回一个布尔值true。
addAll() 如果将指定集合的所有元素添加到调用集合中,则返回一个布尔值true。
clear() 从此集合中自动移除所有元素。
contains() 如果此队列包含指定的元素,则返回一个布尔值true。
containsAll() 如果此集合包含指定集合中的所有元素,则返回一个布尔值true。
equals() 如果指定对象与此集合相等,则返回一个布尔值true。
hashCode() 返回此集合的哈希码值。
isEmpty() 如果此集合不包含元素或为空,则返回true。
iterator() 返回按正确顺序对元素进行迭代的迭代器。
remove() 如果该元素存在于集合中,则从该队列中删除指定的元素。
removeAll() 从此集合中删除指定集合中也存在的所有元素。
removeIf() 删除满足给定谓词过滤器的此集合的所有元素。
retainAll() 仅保留此集合中与指定集合中存在的元素。
size() 返回此集合中的元素总数。
spliterator() 返回此集合中的元素的分割器。
toArray() 返回包含此集合中所有元素(按正确顺序)的数组。