C# intern()

PHPz
Release: 2024-09-03 15:17:30
Original
482 people have browsed it

The intern() function in C# is used to locate the reference of a certain string in memory. This method searches the memory area to discover a reference to a string that matches the supplied string while looking for a matching string. If a match is found, a reference to that string is given back.

Syntax

public static string Intern(String string)
Copy after login

Where,

string is the string whose reference needs to be searched in the memory area.

How does the intern() work in C#?

  • Whenever we need to search for the reference of a string matching the given string in the memory area, we use the Intern() method in C#.
  • Each time the method is called, it searches for the reference to the string in the memory region that matches the specified string. If the specified string and the string in the memory area match, the method returns the reference.
  • This method adds the given string to the memory region and returns a reference if the given string matches and does not already exist there.

Examples to Implement C# intern()

Below are the examples mentioned:

Example #1

C# program to demonstrate Intern() method and determine if the references to the strings are the same or not using ReferenceEquals method:

Code:

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));
}
}
Copy after login

Output:

C# intern()

Explanation: The above program defines a class called Program. The program calls the main procedure, which specifies two string variables. The intern() method creates a new reference and returns it if the first string’s reference doesn’t already exist in the memory space. The program then utilizes the Object.ReferenceEquals method to verify whether the references of the two given strings match or not.

Example #2

C# program to demonstrate Intern() method and determine if the references to the strings are the same or not using ReferenceEquals method:

Code:

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));
}
}
Copy after login

Output:

C# intern()

Explanation: The above program defines a class called Program. One variable, represented by str2, stores a string for which the reference needs to be searched in the memory area. The string str3 is a combination of the string str1 and str3. Hence the reference of the string str2 doesn’t match the reference of the str3 though both strings return the same reference. If the memory area does not contain a reference for the string, the Intern() method creates a new reference and returns it. As a result, string str3 combines string str1 and itself. Then, the Object.ReferenceEquals method verifies whether the references of the two strings match, returning false as the reference of string str2 does not match that of string str3.

Conclusion

In this tutorial, we understand the concept of the Intern() method in C# through the definition, syntax, and working of Intern() method through programming examples and their outputs.

The above is the detailed content of C# intern(). For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!