cari
RumahJavajavaTutorial重拾java基础(十五):数据结构总结

重拾java基础(十五):数据结构总结

一、常见数据结构

1、概述A、数据结构就是研究如何组织、存储、管理一堆数据;例如数组。B、常见的数据结构有栈、队列、链表、线性表、树。


23.jpg

C、散列表(哈希表)@ 目录(顺序存储)+队列(链表)@ 查询效率高,插入和删除的效率也高@ 结构复杂,没有下标D、 树形@ 二叉树   平衡二叉树(红黑树)@ 节点   子树   左子树(比节点小)  右子树(比节点大)。@ 查询非常快

二、Java集合概述(java.util包)

  1. 在实际开发时,经常会遇到:需要存一堆个数不确定的数据     数组长度固定,因        此不能使用    

2. 集合是一种超级数组:       

a.长度可变      

 b.自动增长       

c.可以存储任意类型的数据

三、泛型

A、泛型的使用

  1. 一个问题:集合在存数据的时候很方便(任何类型都可以),但是取数据的时候,不知道该强转成什么类型,这叫类型安全问题

2. 解决思路:限制集合只能存一种类型   实际开发时,一个集合中都是存同一种类型的数据

3. 怎么限制集合只能存一种类型?ArrayList list=new ArrayList();

4. 泛型是在JDK5才出现的,泛型只支持引用数据类型(基本数据类型需要使用相对应的包装类)

5. JDK7简化了泛型的语法:泛形写法  ArrayList list=new ArrayList<>();

6. 以后在使用集合的时候,一般都建议使用泛型,取数据时根本就不需要进行强转了

7. Java的集合类全部都实现了泛型,如果在使用这些集合类时没有使用泛型,那么默认ObjectB、泛型的实现原理

  1. 让数据类型参数化(任意化)

2. 泛型方法

3. 泛型类

4. 泛型接口

5. 实现步骤://1.声明泛型//2.使用泛型//3.给泛型指定类型

C、对比泛型和Object   泛型跟Object一样灵活,但是还能解决类型安全问题

D、JAVA实现的是伪泛型

1. JVM支持泛型才是真泛型,JVM是不支持泛型的,但是又可以执行包含有泛型的代码

2. 让编译器在编译代码时支持泛型,并对泛型进行语法检查

3. 编译器一旦让代码编译通过了,就会把代码中泛型的信息删掉(类型擦除),这样JVM在执行时,代码中就没有泛型

以上就是重拾java基础(十五):数据结构总结的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Mar 17, 2025 pm 05:46 PM

Artikel ini membincangkan menggunakan Maven dan Gradle untuk Pengurusan Projek Java, membina automasi, dan resolusi pergantungan, membandingkan pendekatan dan strategi pengoptimuman mereka.

Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Mar 17, 2025 pm 05:45 PM

Artikel ini membincangkan membuat dan menggunakan perpustakaan Java tersuai (fail balang) dengan pengurusan versi dan pergantungan yang betul, menggunakan alat seperti Maven dan Gradle.

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Mar 17, 2025 pm 05:44 PM

Artikel ini membincangkan pelaksanaan caching pelbagai peringkat di Java menggunakan kafein dan cache jambu untuk meningkatkan prestasi aplikasi. Ia meliputi persediaan, integrasi, dan faedah prestasi, bersama -sama dengan Pengurusan Dasar Konfigurasi dan Pengusiran PRA Terbaik

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Mar 17, 2025 pm 05:43 PM

Artikel ini membincangkan menggunakan JPA untuk pemetaan objek-relasi dengan ciri-ciri canggih seperti caching dan pemuatan malas. Ia meliputi persediaan, pemetaan entiti, dan amalan terbaik untuk mengoptimumkan prestasi sambil menonjolkan potensi perangkap. [159 aksara]

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Mar 17, 2025 pm 05:35 PM

Kelas kelas Java melibatkan pemuatan, menghubungkan, dan memulakan kelas menggunakan sistem hierarki dengan bootstrap, lanjutan, dan pemuat kelas aplikasi. Model delegasi induk memastikan kelas teras dimuatkan dahulu, yang mempengaruhi LOA kelas tersuai

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa