
JAVA
文章平均质量分 82
莫子莫
这个作者很懒,什么都没留下…
展开
-
【JAVA集合】HashMap
桶数组是用来存储数据元素,链表是用来解决冲突,红黑树是为了提高查询 的效率。元素通过计算哈希公式得到具体位置,存储到数组中,但数组中已有元素占用位置,则用链表来存放发生冲突的元素,当链表长度大于8时,则会将链表转化为红黑树,提高查询效率。原创 2023-09-25 12:32:22 · 154 阅读 · 1 评论 -
【JAVA集合】ArrayList的扩容机制以及序列化
这种扩容机制使得在插入大量元素时,ArrayList的效率较高,因为每次扩容只需要创建一次新数组,然后进行一次元素复制,而对于元素插入的每次操作,只需要在新数组中找到合适的位置插入即可。扩容的过程是创建一个新的数组,其长度是原数组长度的1.5倍(也可以理解为原数组长度加上原数组长度的一半),然后将原数组的所有元素复制到新数组中。ArrayList的底层实现是动态数组,其扩容机制是在需要插入新元素而当前数组容量不够时,通过创建一个新的数组,并将原数组中的元素复制到新数组中,以实现扩容。原创 2023-09-15 16:18:58 · 199 阅读 · 0 评论 -
【JAVA】JDK1.8新特性
Stream是一个能描述某些指令序列的新抽象概念。这个序列可以来自于各种数据源,例如集合、数组、I/O通道等。Stream API支持串行和并行操作,并且支持延迟操作,这意味着只有在需要结果时才会执行操作。这些操作可以链接在一起,形成一个复杂的操作链。以上代码首先过滤出以"P"开头的名字,然后将这些名字转换为大写,最后打印出来。原创 2023-09-14 16:03:53 · 153 阅读 · 1 评论 -
【JAVA】反射
Java反射(Reflection)是在运行时对于任意一个类,都能够了解这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性。这种动态获取的信息以及动态调用对象的方法的功能称为 Java 语言的反射机制。原创 2023-09-14 12:15:38 · 103 阅读 · 1 评论 -
【JAVA】注解
在这个示例中,@MyAnnotation 注解被应用于 myMethod 方法上,并设置了 value 属性为 “hello”,count 属性为 3。再比如 Spring 常见的 Autowired ,就是 RUNTIME 的,所以在运行的时候可以通 过反射得到注解的信息,还能拿到标记的值 required。, valueN 是注解的属性值,可以有多个属性值。使用自定义注解时,可以在代码中使用 @annotationName 语法来应用注解,并在代码中使用注解的属性值来访问注解的属性。原创 2023-09-14 11:46:36 · 156 阅读 · 1 评论