Sharecs.net
  • Trang chủ
  • Kho Tài Liệu – Báo Cáo
  • Thủ Thuật
    • Thủ thuật máy tính
      • Windows
      • MacOS
      • Linux
    • Thủ thuật internet
    • Thủ thuật phần mềm
  • Lỗi máy tính
    • Lỗi internet
    • Lỗi windows
    • Lỗi phần mềm
  • Lập Trình
    • Lập Trình Java
    • Lập trình Python
    • Lập Trình React Native
    • Code Hay
  • Linh Tinh
    • PhotoShop
    • Tải Video Wallpaper
    • Kho Tools
      • Cân Bằng Phương Trình Hóa Học
      • Custom Css Scrollbar – Render Code
      • Tạo Kí Tự Đặc Biệt Online
      • Tạo Deep Link
    • Tài Liệu – Luận Văn – Báo Cáo
    • Kho Theme Website WordPress
    • Phần Mềm
No Result
View All Result
  • Trang chủ
  • Kho Tài Liệu – Báo Cáo
  • Thủ Thuật
    • Thủ thuật máy tính
      • Windows
      • MacOS
      • Linux
    • Thủ thuật internet
    • Thủ thuật phần mềm
  • Lỗi máy tính
    • Lỗi internet
    • Lỗi windows
    • Lỗi phần mềm
  • Lập Trình
    • Lập Trình Java
    • Lập trình Python
    • Lập Trình React Native
    • Code Hay
  • Linh Tinh
    • PhotoShop
    • Tải Video Wallpaper
    • Kho Tools
      • Cân Bằng Phương Trình Hóa Học
      • Custom Css Scrollbar – Render Code
      • Tạo Kí Tự Đặc Biệt Online
      • Tạo Deep Link
    • Tài Liệu – Luận Văn – Báo Cáo
    • Kho Theme Website WordPress
    • Phần Mềm
No Result
View All Result
Sharecs.net
No Result
View All Result
Home Lập Trình Lập Trình Java

So sánh List và Set trong Java Collections

by Nguyễn Tuấn
18/02/2023

List và Set là hai kiểu dữ liệu phổ biến trong Java để lưu trữ một tập hợp các phần tử. Cùng sharecs.net tìm hiểu sâu hơn và so sánh List và Set xem chúng khác nhau như thế nào nha.

Mục Lục

  • List trong java
  • Set trong java
  • So sánh List và Set

List trong java

List là một interface trong Java và được sử dụng để lưu trữ các phần tử có thứ tự, cho phép truy cập phần tử thông qua chỉ số index. Một số lớp cơ sở thường được sử dụng để triển khai List là ArrayList, LinkedList và Vector. Mỗi lớp cơ sở có các đặc điểm riêng và được sử dụng tùy thuộc vào tình huống cụ thể.

List cho phép lưu trữ các phần tử theo thứ tự và cho phép truy cập các phần tử thông qua chỉ số index. Vì vậy, List thường được sử dụng để lưu trữ các phần tử cần được sắp xếp hoặc truy cập dựa trên vị trí trong danh sách. Nó cũng cho phép phần tử trùng lặp trong danh sách.

List<String> names = new ArrayList<>();
names.add("John");
names.add("Mary");
names.add("John");
System.out.println(names); // Output: [John, Mary, John]

Set trong java

Set là một interface trong Java và được sử dụng để lưu trữ tập hợp các phần tử duy nhất, tức là không có phần tử trùng lặp. Một số lớp cơ sở thường được sử dụng để triển khai Set là HashSet, TreeSet và LinkedHashSet.

HashSet lưu trữ phần tử theo cách không có thứ tự, TreeSet sắp xếp các phần tử theo thứ tự tăng dần hoặc giảm dần, còn LinkedHashSet lưu trữ phần tử theo thứ tự chèn vào.

Trong khi đó, Set được sử dụng để lưu trữ các phần tử độc nhất, tức là mỗi phần tử trong Set là duy nhất và không thể có phần tử trùng lặp. Set không giữ bất kỳ thứ tự cụ thể nào cho các phần tử, vì vậy nó thường được sử dụng để kiểm tra tính duy nhất của các phần tử hoặc để loại bỏ các phần tử trùng lặp.

Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("John");
uniqueNames.add("Mary");
uniqueNames.add("John");
System.out.println(uniqueNames); // Output: [John, Mary]

So sánh List và Set

Vì hai kiểu dữ liệu này có đặc tính và ứng dụng khác nhau, do đó chúng được cung cấp như hai kiểu dữ liệu riêng biệt trong Java để cho phép lập trình viên lựa chọn kiểu phù hợp với nhu cầu của mình.

  1. Thứ tự: List giữ thứ tự của các phần tử trong danh sách, trong khi Set không đảm bảo bất kỳ thứ tự nào cho các phần tử.
  2. Truy cập phần tử: List cho phép truy cập phần tử bằng chỉ số index, trong khi Set không hỗ trợ truy cập phần tử theo chỉ số index.
  3. Các phần tử trùng lặp: List cho phép các phần tử trùng lặp, trong khi Set chỉ cho phép các phần tử độc nhất.
  4. Hiệu suất: Trong nhiều trường hợp, List có hiệu suất tốt hơn khi truy cập các phần tử theo chỉ số index. Tuy nhiên, Set có hiệu suất tốt hơn trong việc kiểm tra tính duy nhất của các phần tử.
  5. Lớp triển khai: Các lớp cơ sở được sử dụng để triển khai List và Set khác nhau. Các lớp cơ sở phổ biến được sử dụng để triển khai List bao gồm ArrayList, LinkedList và Vector. Các lớp cơ sở phổ biến được sử dụng để triển khai Set bao gồm HashSet, TreeSet và LinkedHashSet.

Khi lựa chọn sử dụng List hoặc Set trong Java, chúng ta cần xem xét các yêu cầu của ứng dụng để quyết định lựa chọn kiểu dữ liệu phù hợp.

Cảm ơn các bạn đã ghé thăm. Chúc các bạn thành công!

5/5 - (1 bình chọn)
Tags: javaJava Collectionsso sánh trong java
ShareSendTweetShare

Cùng chuyên mục

So sánh If Else và Switch Case

So sánh If Else và Switch Case

21/02/2023
8
Super trong java là gì ?

Super trong java là gì ?

20/02/2023
9
So sánh interface và abstract trong java

So sánh interface và abstract trong java

17/02/2023
25
Annotations @Controller and @RestController Trong Spring

Annotations @Controller and @RestController Trong Spring

05/02/2023
23
How to Convert String to XML in Java ?

How to Convert String to XML in Java ?

19/01/2023
8
Đồ Án Tốt Nghiệp Quản Lý Trang Thiết Bị && Full Báo Cáo

Đồ Án Tốt Nghiệp Quản Lý Trang Thiết Bị && Full Báo Cáo

11/12/2022
40
Load More
Subscribe
Notify of
guest

guest

0 Comments
Inline Feedbacks
View all comments

Tài nguyên

Cân bằng phương trình phản ứng hóa

Tạo deep link

Custom Css Scrollbar – Render Code

Bài Viết Nổi Bật

  • Bài Tập Code Python Đơn Giản Có Lời Giải – Phần 1

    Bài Tập Code Python Đơn Giản Có Lời Giải – Phần 1

    1 shares
    Share 0 Tweet 0
  • Download Video Wallpaper Agatsuma Zenitsu – Anime Kimetsu No Yaiba

    45 shares
    Share 0 Tweet 0
  • Hướng Dẫn React Native Build apk File

    0 shares
    Share 0 Tweet 0
  • 500 Câu Trắc Nghiệm Mạng Máy Tính Phần 1 Có Đáp Án

    0 shares
    Share 0 Tweet 0
  • 500 Câu Trắc Nghiệm Mạng Máy Tính Phần 2 Có Đáp Án

    0 shares
    Share 0 Tweet 0
  • Trending
  • Comments
  • Latest
Download Video Wallpaper Agatsuma Zenitsu – Anime Kimetsu No Yaiba

Download Video Wallpaper Agatsuma Zenitsu – Anime Kimetsu No Yaiba

19/02/2023
Bài Tập Code Python Đơn Giản Có Lời Giải – Phần 1

Bài Tập Code Python Đơn Giản Có Lời Giải – Phần 1

31/08/2020
500 Câu Trắc Nghiệm Mạng Máy Tính Phần 1 Có Đáp Án

500 Câu Trắc Nghiệm Mạng Máy Tính Phần 1 Có Đáp Án

23/08/2021
Hướng dẫn cài đặt React Native trên Windows – Phần 1

Hướng Dẫn React Native Build apk File

14/11/2020
Thư viện đồ họa trong Python – Source Code Bắn Pháo Hoa

Thư viện đồ họa trong Python – Source Code Bắn Pháo Hoa

18/03/2023
Chia sẻ quá trình để xây dựng 1 group Facebook cho newbie

Chia sẻ quá trình để xây dựng 1 group Facebook cho newbie

18/03/2023
Tính tổng – Two Sum Leetcode

Tính tổng – Two Sum Leetcode

14/03/2023
So sánh If Else và Switch Case

So sánh If Else và Switch Case

21/02/2023

Phản hồi gần đây

  • luan trong Thư viện đồ họa trong Python – Vẽ doraemon
  • tuan trong Nhận Diện Chó Mèo Python – Tensorflow – Neural Network – Deep Learning
  • Lê Thị Vân trong Fake Giấy Tờ Xác Minh Doanh Nghiệp Trên Facebook
  • Crom trong Cách Kích Hoạt Key Win 11 Bản Quyền –Active Win 11 – Win 10 Free

Donate

Mời Share’cs ly Cafe 

Liên hệ quảng cáo

Email: Sharecs.net@gmail.com

Hợp tác nội dung: Sharecs rất vinh dự được mời các bạn đóng góp những sản phẩm thiết kế, thủ thuật hay những chia sẻ hữu ích… để cùng chia sẻ rộng rãi tới mọi người!

Giới Thiệu

Sharecs.net là một website/blog cá nhân, chuyên chia sẻ những kiến thức xoay quanh công nghệ như máy tính, internet, phần mềm, lập trình,... Mình hi vọng, Sharecs sẽ mang lại những kiến thức mà bạn chưa từng được học trên ghế nhà trường!

  • Giới Thiệu & Liên Hệ
  • Chính Sách Bảo Mật

CopyRight By Sharecs.net DMCA.com Protection Status

No Result
View All Result
  • Trang chủ
  • Kho Tài Liệu – Báo Cáo
  • Thủ Thuật
    • Thủ thuật máy tính
      • Windows
      • MacOS
      • Linux
    • Thủ thuật internet
    • Thủ thuật phần mềm
  • Lỗi máy tính
    • Lỗi internet
    • Lỗi windows
    • Lỗi phần mềm
  • Lập Trình
    • Lập Trình Java
    • Lập trình Python
    • Lập Trình React Native
    • Code Hay
  • Linh Tinh
    • PhotoShop
    • Tải Video Wallpaper
    • Kho Tools
      • Cân Bằng Phương Trình Hóa Học
      • Custom Css Scrollbar – Render Code
      • Tạo Kí Tự Đặc Biệt Online
      • Tạo Deep Link
    • Tài Liệu – Luận Văn – Báo Cáo
    • Kho Theme Website WordPress
    • Phần Mềm

CopyRight By Sharecs.net DMCA.com Protection Status