Danh mục

#public int GetNumEntries() { return ctr; }

Số trang: 40      Loại file: pdf      Dung lượng: 670.02 KB      Lượt xem: 14      Lượt tải: 0    
10.10.2023

Hỗ trợ phí lưu trữ khi tải xuống: 14,000 VND Tải xuống file đầy đủ (40 trang) 0
Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Tham khảo tài liệu #public int getnumentries() { return ctr; }, công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
#public int GetNumEntries() { return ctr; } Ngôn Ngữ Lập Trình C# public int GetNumEntries() { return ctr; } // biến thành viên lưu giữ mảng các chuỗi private string[] strings; // biến thành viên lưu giữa số chuỗi trong mảng private int ctr = 0; } public class Tester { static void Main() { // tạo đối tượng List Box và sau đó khởi tạo ListBoxTest lbt = new ListBoxTest(“Hello”,”World”); // thêm các chuỗi vào lbt.Add(“Who”); lbt.Add(“is”); lbt.Add(“Ngoc”); lbt.Add(“Mun”); // truy cập bộ chỉ mục string str = “Universe”; lbt[1] = str; lbt[“Hell”] = “Hi”; //lbt[“xyzt”] = “error!”; // lấy tất cả các chuỗi ra for(int i = 0; i < lbt.GetNumEntries();i++) { Console.WriteLine(“lbt[{0}] = {1}”, i, lbt[i]); } } }}----------------------------------------------------------------------------- Kết quả:lbt[0]: Hilbt[1]: Universelbt[2]: Who 241 Mảng, Chỉ Mục, và Tập Hợp Ngôn Ngữ Lập Trình C#lbt[3]: islbt[4]: Ngoclbt[5]: Mun-----------------------------------------------------------------------------Ví dụ 9.10 thì tương tự như ví dụ 9.9 ngoại trừ việc thêm vào một chỉ mục được nạp chồnglấy tham số chỉ mục là chuỗi và phương thức findString() tạo ra để lấy chỉ mục nguyên từchuỗi.Phương thức findString() đơn giản là lặp mảng strings cho đến khi nào tìm được chuỗi có kýtự đầu tiên trùng với ký tự đầu tiên của chụổi tham số. Nếu tìm thấy thì trả về chỉ mục củachuỗi, trường hợp ngược lại trả về -1.Như chúng ta thấy trong hàm Main(), lệnh truy cập chỉ mục thứ hai dùng chuỗi làm tham sốchỉ mục, như đã làm với số nguyên trước: lbt[“hell”] = “Hi”;Khi đó nạp chồng chỉ mục sẽ được gọi, sau khi kiểm tra chuỗi hợp lệ tức là không rỗng, chuỗinày sẽ được truyền vào cho phương thức findString(), kết quả findString() trả về là một chỉmục nguyên, số nguyên này sẽ được sử dụng làm chỉ mục: return this[ findString(index)];Ví dụ 9.10 trên tồn tại lỗi khi một chuỗi truyền vào không phù hợp với bất cứ chuỗi nào trongmảng, khi đó giá trị trả về là –1. Sau đó giá trị này được dùng làm chỉ mục vào chuỗi mảngstrings. Điều này sẽ tạo ra một ngoại lệ (System.NullReferenceException). Trường hợp nàyxảy ra khi chúng ta bỏ đấu comment của lệnh: lbt[“xyzt”] = ”error!”;Các trường hợp phát sinh lỗi này cần phải được loại bỏ, đây có thể là bài tập cho chúng ta làmthêm và việc này hết sức cần thiết.Giao diện tập hợp Môi trường .NET cung cấp những giao diện chuẩn cho việc liệt kê, so sánh, và tạo các tậphợp. Một số các giao diện trong số đó được liệt kê trong bảng 9.2 sau: Giao diện Mục đích Liệt kê thông qua một tập hợp bằng cách sử dụng IEnumerable foreach. Thực thi bởi tất cả các tập hợp để cung cấp phương ICollection thức CopyTo() cũng như các thuộc tính Count, ISReadOnly, ISSynchronized, và SyncRoot. So sánh giữa hai đối tượng lưu giữ trong tập hợp để IComparer sắp xếp các đối tượng trong tập hợp. IList Sử dụng bởi những tập hợp mảng được chỉ mục 242 Mảng, Chỉ Mục, và Tập Hợp Ngôn Ngữ Lập Trình C# Dùng trong các tập hợp dựa trên khóa và giá trị như IDictionary Hashtable và SortedList. Cho phép liệt kê dùng câu lệnh foreach qua tập hợp IDictionaryEnumerator hỗ trợ IDictionary. Bảng 9.2: Giao diện cho tập hợp.Giao diện IEnumerable Chúng ta có thể hỗ trợ cú pháp foreach trong lớp ListBoxTest bằng việc thực thi giaodiện IEnumerator. Giao diện này chỉ có một phương thức duy nhất là GetEnumerator(), côngviệc của phương thức là trả về một sự thực thi đặc biệt của IEnumerator. Do vậy, ngữ nghĩacủa lớp Enumerable là nó có thể cung cấp một Enumerator: public IEnumerator GetEnumerator() { return (IEnumerator) new ListBoxEnumerator(this); } phải thực thi những phương thức và thuộc tính IEnumerator. Chúng có thể đượcEnumeratorthực thi trực tiếp trong lớp chứa (trong trường hợp này là lớp ListBoxTest) hay bởi một lớpphân biệt khác. Cách ...

Tài liệu được xem nhiều: