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

Nối chuỗi (Join) trong C#


Giới thiệu

Phương thức tĩnh string.Join(separator, values) nối các chuỗi trong tập hợp thành một chuỗi, chèn separator giữa các phần tử. Hiệu quả hơn nối chuỗi bằng + trong vòng lặp.

Ví dụ cơ bản

string[] str = { "One", "Two", "Three", "Four", "Five" };
string res = string.Join(" ", str); // "One Two Three Four Five"

Ví dụ hoàn chỉnh

using System;

public class Demo
{
    public static void Main()
    {
        string[] str = { "One", "Two", "Three", "Four", "Five" };
        string res = string.Join(" ", str);
        Console.WriteLine(res);
    }
}

Kết quả

One Two Three Four Five

Các nạp chồng Join

Nạp chồngMô tả
Join(string, params string[])Mảng chuỗi
Join(string, IEnumerable<string>)Tập hợp chuỗi (List, array, ...)
Join(char, params object[])Object array, gọi ToString()
Join<T>(string, IEnumerable<T>)Generic (NET Core 2.0+), tự ToString()

Ví dụ với object/List

List nums = new List { 1, 2, 3 };
string s = string.Join(",", nums); // "1,2,3" (NET Core 2.0+)
// Framework cũ:
string s = string.Join(",", nums.Select(n => n.ToString()).ToArray());

Lưu ý hiệu suất

  • Join tính toán tổng độ dài trước, cấp phát 1 string -> O(n).
  • Nối bằng + trong loop -> O(n²) do string immutable.
  • Dùng StringBuilder cho xây dựng chuỗi phức tạp, nhiều bước.