Category Archives: Collection Framework

Collection trong java là một root interface trong hệ thống cấp bậc Collection. Java Collection cung cấp nhiều interface (Set, List, Queue, Deque vv) và các lớp (ArrayList, Vector, LinkedList, PriorityQueue, HashSet, LinkedHashSet, TreeSet vv).

Bất kì lập trình viên nào đã từng làm việc với Java hay Android có lẽ đều biết tới ArrayList – một class cực kì dễ dùng và tiện dụng. Nhưng có lẽ không nhiều người biết rằng ArrayList chỉ là một trong số rất nhiều class thuộc bộ thư viện Java Collection Framework của Java – một bộ thư viện với rất nhiều class mạnh mẽ giúp bạn đơn giản hóa các thao tác khi làm việc với tập hợp và đồ thị. Java Collection Framework (có thể gọi là nền tảng tập hợp) được xây dựng các interface đinh nghĩa các cách thao tác với tập hợp, các class cụ thể thực thi các interface và các giải thuật thông dụng thường xuyên được sử dụng với tập hợp.  Java Collection Framework cung cấp cho bạn hầu như tất cả những gì bạn cần khi muốn làm việc với các tập hợp hay là đồ thị, không chỉ vậy nó còn cho phép bạn mở rộng bằng các kế thừa từ các class hay interface có sẵn để tạo ra bộ thư viện phù hợp nhất với nhu cầu của bạn. Collection framework được thiết kế với mục đích như sau:

  • Framework phải là hiệu năng cao. Sự triển khai cho các tập hợp cơ bản (các mảng động, linked list, tree và hashtable) được sử dụng với hiệu quả cao.
  • Framework phải cho phép các kiểu tập hợp khác nhau để làm việc theo một cách tương tự như nhau với độ phân hóa ở mức cao.
  • Kế thừa và/hoặc tìm hiểu với các tập hợp phải là dễ dàng. Một collections framework là một cấu trúc thống nhất để biểu diễn và thao tác các collection. Tất cả collections framework đều chứa:
  • Interface: Đây là các kiểu dữ liệu abstract mà biểu diễn collection. Interface cho phép collection được thao tác một cách độc lập theo phép biểu diễn của chúng. Trong ngôn ngữ hướng đối tượng, các interface nói chung cấu tạo nên một hierarchy.
  • Sự triển khai: ví dụ như các Class Đây là sự triển khai cụ thể của collection interface. Về bản chất, chúng là những cấu trúc dữ liệu có thể tái sử dụng.
  • Thuật toán: Đây là các phương thức thực hiện các trình tính toán hữu ích, như tìm kiếm và xếp thứ tự phân loại, trên các đối tượng mà triển khai collection interface. Các thuật toán được xem như là đa hình: đó là, cùng một phương thức có thể được sử dụng trên nhiều sự triển khai khác nhau của collection interface thích hợp.
  • Ngoài ra, framework định nghĩa một số map interfaces và class. Map lưu giữ các cặp key/value. Mặc dù các map không là collections về khái niệm, nhưng chúng hoàn toàn tương thích với collection. Để làm rõ hơn mình sẽ đi luôn vào giới thiệu tới các bạn từng thành phần chính được của Java Collection Framework.

LinkedList trong Java có gì hay? (LinkedList in Java)

Trong Java, một trong những collection  đáng được nhắc đến để sử dụng  trong những chương trình không ai khác đó chính là LinkedList.Bài viết hôm nay mang hương vị chia sẻ về những điều cần biết LinkedList trong java.  Đây cũng là một trong những kiến thức thường được hỏi trong những kỳ phỏng vấn và có hiệu suất khá cao nếu bạn là một lập trình viên  có kinh nghiệm. Vậy LinkedList trong java là gì? Quan trọng nhất là khi nào dùng LinkedList? Và dùng LinkedList như thế nào? Continue reading LinkedList trong Java có gì hay? (LinkedList in Java)

Ví dụ và cách sử dụng ArrayList trong Java

ArrayList trong java là gì?

ArrayList trong java là một List,nó được sử dụng rộng rãi vì các chức năng và tính linh hoạt mà java cung cấp. Hầu hết các nhà phát triển chọn ArrayList  là một thay thế rất tốt về mảng  trong  java truyền thống.

Continue reading Ví dụ và cách sử dụng ArrayList trong Java