ArrayList Trong C#

Discussion in 'C & C++' started by Mickey, Dec 6, 2017.

  1. Mickey

    Mickey Hacking For Hacker Staff Member

    Giới thiệu về ArrayList :
    Array (mảng)
    Ứng dụng của mảng trong các bài tập ở các ngôn ngữ C/C++ là rất lớn. Nhưng…có 1 điều khó khăn mà chúng ta gặp phải khi sử dụng chúng là sự hạn chế về kích thước cố định của mảng.

    Trong C#, muốn thao tác với ArrayList, không có cách nào khác hơn là bạn phải dùng đến class ArrayList được xây dựng sẵn. Lớp ArrayList này cung cấp cho bạn những phương thức và thuộc tính cơ bản sau:

    PUBLIC PROPERTIES – CÔNG DỤNG

    Capacity : trả về hoặc cho thiết đặt số phần tử mà ArrayList có thể chứa.
    Count : cho biết số phần tử hiện có trong ArrayList
    IsFixedSize: trả về một trị bool cho biết liệu ArrayList mang kích thước cố định hay không
    IsReadOnly: trả về 1 trị bool cho biết liệu xem ArrayList thuộc loại ReadOnly hay không
    Item: trả về hoặc thiết đặt phần tử mảng về chỉ mục được chỉ định. Trên C#, thuộc tính này là indexer (bộ rảo chỉ mục) đối với class ArrayList


    PUBLIC METHODS – CÔNG DỤNG

    Add: thêm 1 đối tượng vào cuối ArrayList
    AddRange: thêm các phần tử của một Icolletion vào cuối ArrayList
    BinarySearch: sử dụng giải thuật binary search để xác định vị trí của một phần tử hoặc một phần trên ArrayList đã được sắp xếp
    Clear: xóa sạch ArrayList
    Clone: tạo 1 bản sao của ArrayList
    Contains: xác định 1 phần tử nào đó có nằm trong ArrayList hay không
    CopyTo: Sao chép ArrayList hoặc 1 phần tử nào đó sang mảng 1 chiều
    IndexOf: trả về zero-based index của sự xuất hiện đầu tiên của 1 trị trên ArrayList hoặc trên 1 phần mảng
    Insert: chèn thêm 1 phần tử vào ArrayList tại chỉ mục được chỉ định
    InsertRange: chèn các phần tử của 1 collection vào ArrayList tại chỉ mục được chỉ định
    LastIndexOf: trả về zero-based index của sự xuất hiện cuối cùng của 1 trị trên ArrayList hoặc trên 1 phần mảng
    Remove: gỡ bỏ sự xuất hiện đầu tiên của một specific object ra khỏi ArrayList
    RemoveAt: gỡ bỏ những phần tử tại chỉ mục được chỉ định của ArrayList
    RemoveRange: gỡ bỏ 1 khoảng phần tử từ ArrayList
    Reverse: đảo ngược thứ tự của các phần tử trên ArrayList.
    SetRange: sao chép các phần tử của một collection chồng lên 1 phần phần tử trên ArrayList
    Sort: sắp xếp các phần tử trên ArrayList hoặc trên 1 phần mảng
    ToArray: sao chép các phần tử của ArrayList về 1 bản dãy
    TrimToSize: thiết đặt khả năng về số phần tử hiện hành trên ArrayList

    Lưu ý: khi bạn tạo 1 ArrayList, bạn không thể xác định sẽ có bao nhiêu đối tượng trong mảng. Bạn thêm phần tử vào ArrayList bằng cách dùng hàm Add() và ô liệt kê sẽ tự mình lo việc “giữ sổ sách” nội bộ đúng tình trạng.
    Bạn cũng nên lưu ý 1 điều là sức chứa ban đầu mặc định của ArrayList là 16, do đó khi bạn thêm phần tử thứ 17 thì kích thước mặc định này sẽ tăng gấp đôi lên thành 32.

    Ví dụ đơn giản :
    Mã:
    PHP:
    using System;
    using System.Collections;
    public class 
    SamplesArrayList
    {

       public static 
    void Main()
      {

         
    // tạo 1 thể hiện của ArrayList
         
    ArrayList myAL = new ArrayList();
         
    myAL.Add("Hello");
         
    myAL.Add("World");
         
    myAL.Add("!");

         
    // Hiển thị thuộc tính và giá trị trong ArrayList
         
    Console.WriteLine"myAL" );
         
    Console.WriteLine"    Count:    {0}"myAL.Count );
         
    Console.WriteLine"    Capacity: {0}"myAL.Capacity );
         
    Console.Write"    Values:" );
         
    PrintValuesmyAL );
       }

       public static 
    void PrintValuesIEnumerable myList )
       {
         foreach ( 
    Object obj in myList )
            
    Console.Write"   {0}"obj );
         
    Console.WriteLine();
       }

    }


    /*
    This code produces the following output.

    myAL
       Count:    3
       Capacity: 16
       Values:   Hello   World   !

    */
    [PHP]
    (
    theo kist)
     

Share This Page