Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Lấy hoặc đặt giá trị với khóa chỉ định trong SortedList C#

Giới thiệu

SortedList cho phép truy xuất và gán giá trị thông qua indexer với khóa: list[key]. Nếu khóa tồn tại, trả về giá trị; nếu không, ném KeyNotFoundException (khi get) hoặc thêm mới (khi set).

Ví dụ 1: Lấy và cập nhật giá trị cho khóa "E"

using System;
using System.Collections;

public class Demo
{
    public static void Main()
    {
        SortedList list = new SortedList();
        list.Add("A", "Books");
        list.Add("B", "Electronics");
        list.Add("C", "Appliances");
        list.Add("D", "Pet Supplies");
        list.Add("E", "Clothing");
        list.Add("F", "Footwear");

        Console.WriteLine("Giá trị liên kết với khóa E = " + list["E"]);

        list["E"] = "HDD"; // Cập nhật giá trị

        Console.WriteLine("Giá trị liên kết với khóa E [Đã cập nhật] = " + list["E"]);
    }
}

Kết quả

Giá trị liên kết với khóa E = Clothing
Giá trị liên kết với khóa E [Đã cập nhật] = HDD

Ví dụ 2: Chỉ lấy giá trị cho khóa "D"

using System;
using System.Collections;

public class Demo
{
    public static void Main()
    {
        SortedList list = new SortedList();
        list.Add("A", "Books");
        list.Add("B", "Electronics");
        list.Add("C", "Appliances");
        list.Add("D", "Pet Supplies");
        list.Add("E", "Clothing");
        list.Add("F", "Footwear");

        Console.WriteLine("Giá trị liên kết với khóa D = " + list["D"]);
    }
}

Kết quả

Giá trị liên kết với khóa D = Pet Supplies

Lưu ý: SortedList sắp xếp theo khóa. Indexer cho phép thêm khóa mới nếu khóa chưa tồn tại (khi set). Khi get khóa không tồn tại, ném ngoại lệ. Nên dùng ContainsKey hoặc TryGetValue (cho generic SortedList<TKey,TValue>) để an toàn.