Fungsi intern() dalam C# digunakan untuk mencari rujukan rentetan tertentu dalam ingatan. Kaedah ini mencari kawasan memori untuk menemui rujukan kepada rentetan yang sepadan dengan rentetan yang dibekalkan sambil mencari rentetan yang sepadan. Jika padanan ditemui, rujukan kepada rentetan itu akan diberikan semula.
Sintaks
public static string Intern(String string)
Di mana,
rentetan ialah rentetan yang rujukannya perlu dicari dalam kawasan ingatan.
Di bawah adalah contoh yang dinyatakan:
Program C# untuk menunjukkan kaedah Intern() dan menentukan sama ada rujukan kepada rentetan adalah sama atau tidak menggunakan kaedah ReferenceEquals:
Kod:
using System; //a class called program is defined public class Program { //main method is called public static void Main(string[] args) { //a string variable is used to store the first string string str1 = "Welcome to C#"; //another string variable is used to store the reference of the string one using intern method string str2 = string.Intern(str1); Console.WriteLine("The value of the string one is: {0}",str1); Console.WriteLine("The value of the string two after using intern method on string one is: {0}",str2); //ReferenceEquals method is used to check if the two strings are pointing to the same reference in the memory area or not Console.WriteLine("If the references of the two objects are equal: {0}", Object.ReferenceEquals(str1, str2)); } }
Output:
Penjelasan: Program di atas mentakrifkan kelas yang dipanggil Program. Program ini memanggil prosedur utama, yang menentukan dua pembolehubah rentetan. Kaedah intern() mencipta rujukan baharu dan mengembalikannya jika rujukan rentetan pertama belum wujud dalam ruang ingatan. Program ini kemudiannya menggunakan kaedah Object.ReferenceEquals untuk mengesahkan sama ada rujukan bagi dua rentetan yang diberikan sepadan atau tidak.
Program C# untuk menunjukkan kaedah Intern() dan menentukan sama ada rujukan kepada rentetan adalah sama atau tidak menggunakan kaedah ReferenceEquals:
Kod:
using System; //a class called program is defined public class Program { //main method is called public static void Main(string[] args) { //a string variable is used to store the first string string str1 = "Welcome to"; string str2 = "Welcome to C#"; //another string variable is used to store the reference of the string one using intern method string str3 = string.Intern(str1 + " C#"); Console.WriteLine("The value of the string one is: {0}",str1); Console.WriteLine("The value of the string two is: {0}",str2); Console.WriteLine("The value of the string three after using intern method on string one is: {0}",str3); //ReferenceEquals method is used to check if the two strings are pointing to the same reference in the memory area or not Console.WriteLine("If the references of the two objects are equal: {0}", Object.ReferenceEquals(str2, str3)); } }
Output:
Penjelasan: Atur cara di atas mentakrifkan kelas yang dipanggil Program. Satu pembolehubah, diwakili oleh str2, menyimpan rentetan yang mana rujukannya perlu dicari dalam kawasan memori. Rentetan str3 ialah gabungan rentetan str1 dan str3. Oleh itu rujukan rentetan str2 tidak sepadan dengan rujukan str3 walaupun kedua-dua rentetan mengembalikan rujukan yang sama. Jika kawasan memori tidak mengandungi rujukan untuk rentetan, kaedah Intern() mencipta rujukan baharu dan mengembalikannya. Akibatnya, rentetan str3 menggabungkan rentetan str1 dan dirinya sendiri. Kemudian, kaedah Object.ReferenceEquals mengesahkan sama ada rujukan dua rentetan sepadan, mengembalikan palsu kerana rujukan rentetan str2 tidak sepadan dengan rentetan str3.
Dalam tutorial ini, kami memahami konsep kaedah Intern() dalam C# melalui takrifan, sintaks dan cara kerja Intern() melalui contoh pengaturcaraan dan outputnya.
Atas ialah kandungan terperinci C# pelatih(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!