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

Lấy hoặc đặt phần tử tại chỉ mục cụ thể trong StringCollection C#

Giới thiệu

StringCollection hỗ trợ indexer để truy cập phần tử theo chỉ mục (0-based). Khác với List<string>, StringCollection chỉ chứa chuỗi và không hỗ trợ LINQ trực tiếp.

Ví dụ 1: Lấy phần tử tại chỉ mục

using System;
using System.Collections.Specialized;

public class Demo
{
    public static void Main()
    {
        StringCollection strCol = new StringCollection();
        String[] strArr = new String[] { "A", "B", "C", "D", "E", "F", "G", "H" };
        
        Console.WriteLine("StringCollection elements...");
        foreach (string str in strArr)
        {
            Console.WriteLine(str);
        }
        
        strCol.AddRange(strArr);
        Console.WriteLine("Element at 5th index = " + strCol[5]);
        Console.WriteLine("Count of strings in StringCollection = " + strCol.Count);
    }
}

Kết quả

StringCollection elements...
A
B
C
D
E
F
G
H
Element at 5th index = F
Count of strings in StringCollection = 8

Ví dụ 2: Cập nhật phần tử tại chỉ mục

using System;
using System.Collections.Specialized;

public class Demo
{
    public static void Main()
    {
        StringCollection strCol = new StringCollection();
        String[] strArr = new String[] { "A", "B", "C", "D", "E", "F", "G", "H" };
        
        Console.WriteLine("StringCollection elements...");
        foreach (string str in strArr)
        {
            Console.WriteLine(str);
        }
        
        strCol.AddRange(strArr);
        Console.WriteLine("Element at 5th index = " + strCol[5]);
        
        strCol[5] = "K";
        Console.WriteLine("Element at 5th index [UPDATED] = " + strCol[5]);
    }
}

Kết quả

StringCollection elements...
A
B
C
D
E
F
G
H
Element at 5th index = F
Element at 5th index [UPDATED] = K

So sánh StringCollection vs List<string>

Đặc điểm StringCollection List<string>
Namespace System.Collections.Specialized System.Collections.Generic
Kiểu dữ liệu Chỉ string string (kiểu mạnh)
Hỗ trợ LINQ Không trực tiếp Có
Hiệu suất Tối ưu cho chuỗi Tốt cho mọi trường hợp