java 基础知识

一. == 和 equals
   1. ==和equals在绝大部分时候,作用是相同的。
       a.== 可以作用在 [基本数据类型]  [类]
       b.equals 只能作用在类上。(类的方法)
       c.都是比较的对象指向的地址
   2. equals  被一些类重载的时候,改写其内部实现,== 和 equals 的作用就不相同。
       String, Integer,Date 等一些类 重载并改写了equals 的内部实现, 使其是比较的是对象内部存储的值。

二.  Collection 集合
    Collection:来源与 Java.util 包. 主要包含3类数据结构
     a.  List
     b.  Set
     c.  Queue
    以上都是接口类。
    1.  List 常用实现类有以下3种:
     a. ArrayList:
         ArrayList 是基于数组的, ArrayList 是无序的,它按照添加的先后顺序排列。如果要对 ArrayList 进行排序,可以调用它的 sort()方法。并提供一个 Comparator 比较器。
        ArrayList 是线程不安全的。所以效率高.
        ArrayList 因为是基于数组, 查询快,插入和删除慢
     b. LinkedList
      LinkedList 是基于链表的,它是一个双向链表,每个节点维护了一个 prev 和 next 指针。同时这个链表维护了
      first 和 last指针,分别指向第一个元素和最后一个元素。它也是一个无序列表,也是按照插入的先后顺序。
      LinkedList 也是线程不安全的。所以效率高.
      LInkedList 因为是基于链表的,查询慢,插入和删除快
     c. Vector
     
Vector 和 ArrayList 非常类似,但Vector 是线程安全的。所以效率低

     2. set(集合)  无序,不可重复,常用实现类有以下3种:
         a. HashSet
           
  hashset 是用hashmap 实现,于hashmap 区别  没有重复。
             hashset (hashmap) 都是线程不安全的数据结构
         b. TreeSet
             
底层数据结构是红黑树
             TreeSet 是一个有序的集合, TreeSet的性能比HashSet差
         c. LinkedHashSet

          底层数据结构是由哈希表和链表组成。
          LinkedHashSet 是不重复的,按插入的顺序排序。
          LinkedHashSet 是线程不安全的。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Java 基础 语言特性 优点 ① 平台无关,摆脱硬件束缚,"一次编写,到处运行"。 ② 安全的内存管理和访问机制...
    续袁阅读 699评论 0 1
  • 最近发现自己的Java基础知识还是有点薄弱,刚好有点空闲时间进行再补一补,然后进行整理一下,方便自己以后复习。其实...
    Steven_SHH阅读 3,168评论 0 2
  • 接口 集合有两个基本接口 Collection 和 Map List 是一个有序集合。元素会增加到容器中的特定位置...
    SonyaBaby阅读 739评论 0 1
  • 1、明确项目是做什么的2、明确项目的价值。(为什么做这个项目,它解决了用户什么痛点,它带来什么价值?)3、明确项目...
    猿日记阅读 180评论 0 0
  • 1.抽象类(标志:abstract) 定义:有抽象方法的类,就必须声明为抽象类,也是一个类抽象方法:没有方法体 作...
    月影风煞阅读 303评论 0 1

友情链接更多精彩内容