Прочитать на английском

Поделиться через


String.Intern(String) Метод

Определение

Извлекает системную ссылку на указанный объект String.

public static string Intern(string str);

Параметры

str
String

Строка для поиска в пуле интернирования.

Возвращаемое значение

Системная ссылка на значение str, если оно уже интернировано; в противном случае возвращается новая ссылка на строку со значением str.

Исключения

str имеет значение null.

Примеры

В следующем примере используются три строки, равные по значению, чтобы определить, равны ли вновь созданная строка и интернированная строка.

// Sample for String.Intern(String)
using System;
using System.Text;

class Sample
{
    public static void Main()
    {
        string s1 = "MyTest";
        string s2 = new StringBuilder().Append("My").Append("Test").ToString();
        string s3 = String.Intern(s2);
        Console.WriteLine($"s1 == {s1}");
        Console.WriteLine($"s2 == {s2}");
        Console.WriteLine($"s3 == {s3}");
        Console.WriteLine($"Is s2 the same reference as s1?: {(Object)s2 == (Object)s1}");
        Console.WriteLine($"Is s3 the same reference as s1?: {(Object)s3 == (Object)s1}");
    }
}
/*
This example produces the following results:
s1 == MyTest
s2 == MyTest
s3 == MyTest
Is s2 the same reference as s1?: False
Is s3 the same reference as s1?: True
*/

Комментарии

Дополнительные сведения об этом API см. в разделе Дополнительные примечания API для String.Intern.

Применяется к

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

См. также раздел