Về mặt toán học, vô số có nghĩa là "có thể được đặt thành một tương ứng một với một số tự nhiên". Hầu hết các biểu diễn trong điện toán là vô số vì chúng được tạo thành từ các chuỗi bit và chuỗi bit có thể được lấy để biểu thị các số trong hệ thống nhị phân.
Một số đại diện dữ liệu không được coi là vô số. Ví dụ, một số dấu phẩy động được tạo ra từ các bit, nhưng chúng tôi làm việc với nó như là một xấp xỉ với một số thực. Ở cấp độ nhị phân, chúng ta có thể "đếm" thông qua các số dấu phẩy động liên tiếp, nhưng thường thì điều này không liên quan trong các ứng dụng số.
Trong một số tình huống khác, việc liệt kê là có thể, nhưng không có thỏa thuận về việc liệt kê. Ví dụ, tất cả các đối tượng trong hình ảnh thời gian chạy của bạn tạo thành một tập hợp hữu hạn và có thể được liệt kê. Người thu gom rác thực hiện điều đó khi nó đi qua các vật thể sống. Nhưng ứng dụng không liệt kê tập hợp tất cả các đối tượng theo cách đó mà không quan tâm đến ranh giới kiểu hoặc mô-đun; nó liệt kê các đối tượng nhỏ hơn cùng loại hoặc có liên quan.
Thông thường khi một bảng liệt kê tồn tại chính thức, có sự thỏa thuận của tất cả các bên. Đây là một tập hợp các giá trị. Đây là lần đầu tiên. Đó là một trong những người kế nhiệm của nó, và như vậy.
Trong một số ngôn ngữ lập trình, tồn tại các kiểu liệt kê: một số cách xác định kỷ luật các hằng số ký hiệu có tên được trình biên dịch ánh xạ tới các giá trị nguyên duy nhất. Nếu các kiểu như vậy được gõ mạnh, thì các hằng số này chỉ có thể được lưu trữ trong các biến của loại tương ứng của chúng, được gọi là kiểu liệt kê . Ví dụ, kiểu liệt kê do người dùng định nghĩa month
chỉ có thể thực hiện các giá trị january
thông qua december
. Các giá trị này được giảm xuống các giá trị từ 0 đến 11 và có thể cho phép số học, chẳng hạn như successor(january)
sản xuất february
hoặc khả năng sử dụng phép liệt kê dưới dạng chỉ mục mảng: xác định một mảng days[january..december]
trong đó days[january]
, ví dụ: 31. Mục đích của kiểu liệt kê, do đó, là để phục vụ như một tập hợp con của các số tự nhiên, bởi các tên khác biệt và cung cấp sự rõ ràng về ý nghĩa (tên được sử dụng thay cho hằng số) và kiểm tra kiểu: màu red
từ color
liệt kê không thể được gán cho month
kiểu liệt kê .
Động từ liệt kêcũng được sử dụng để biểu thị khái niệm truy vấn API để truy xuất danh sách các đối tượng, thường theo kiểu từng bước: liệt kê các giao diện mạng, liệt kê các tệp trong một thư mục, v.v. Bất cứ khi nào một đối tượng ở trạng thái tương ứng 1: N với một số đối tượng khác, nó có thể dễ dàng hỗ trợ API liệt kê cho phép chúng tôi đi qua các đối tượng anh chị em đó hoặc truy xuất chúng dưới dạng danh sách. Thuật ngữ này hơi âm u; ví dụ trong một số trường hợp, ngay cả khi các phần tử không theo một thứ tự cụ thể, nhưng tất cả có thể được truy cập mà không lặp lại, thì đó vẫn là bảng liệt kê. Một số cấu trúc dữ liệu tập hợp động như bảng băm không cung cấp một thứ tự cụ thể và có thể tự tổ chức lại khi chúng lớn lên và co lại, để thứ tự thực tế thay đổi khi thực hiện chèn và xóa. A
có thể đến trướcB
, nhưng khi chúng tôi chèn C
, bây giờ B
tình cờ đến trước A
vì một số tổ chức lại nội bộ đã diễn ra.