C# | How to retrieve a reference to a specified String
String.IsInterned(String) Method method is used to retrieve a reference to a specified String. This method looks up the specified string in the intern pool.
If the specified string has already been interned, a reference to that instance is returned. Otherwise, null is returned. Here the intern pool is a table that contains a single instance of each unique literal string constant declared in a program, as well as any unique instance of String you add programmatically by calling the Intern method.
Note: The main difference between String.Intern(String) Method and String.IsInterned(String) Method is that Intern method returns a reference if the string doesn’t exist by adding a reference of the specified string to the intern pool. But the IsInterned method returns null if the string doesn’t exist.
Syntax:
public static string IsInterned (string strA);
Here, strA is a string which is used to search for in the intern pool.
Return Value: The return type of this method is System.String. This method will return a reference to strA if it is present in the CLR(Common Language Runtime) intern pool. Otherwise, return null.
Exception: This method will give ArgumentNullException of the str is null.
Below given are some examples to understand the implementation in a better way:
Example 1:
C#
using System;
class GFG {
public static void Main()
{
string str1 = "Monday" ;
string str2 = str1 + "-day" ;
string [] pool = { "Tuesday" , "Wednesday" ,
"Thursday" , str2};
foreach ( var item in pool)
{
bool value = String.IsInterned(item) != null ;
if (value)
Console.WriteLine( "{0}: Yes" , item);
else
Console.WriteLine( "{0}: No" , item);
}
}
}
|
Output:
Tuesday: Yes
Wednesday: Yes
Thursday: Yes
Monday-day: No
Example 2:
C#
using System;
class GFG {
public static void Main()
{
string str1 = "Geeks" ;
string str2 = str1 + "-day" ;
string [] pool = { "GFG" , "DSA" ,
"C#" , null };
foreach ( var item in pool)
{
bool value = String.IsInterned(item) != null ;
if (value)
Console.WriteLine( "{0}: Yes" , item);
else
Console.WriteLine( "{0}: No" , item);
}
}
}
|
Runtime Error:
Unhandled Exception:
System.ArgumentNullException: Value cannot be null.
Parameter name: str
Reference:
Last Updated :
02 Jun, 2021
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...