El método String.IsInterned(String) Method se utiliza para recuperar una referencia a una string especificada. Este método busca la string especificada en el grupo interno.
Si la string especificada ya se ha internado, se devuelve una referencia a esa instancia. De lo contrario, se devuelve nulo. Aquí, el grupo interno es una tabla que contiene una sola instancia de cada constante de string literal única declarada en un programa, así como cualquier instancia única de String que agregue mediante programación llamando al método Intern .
Nota: La principal diferencia entre el método String.Intern(String) y el método String.IsInterned(String) es que el método Intern devuelve una referencia si la string no existe agregando una referencia de la string especificada al grupo interno. Pero el método IsInterned devuelve nulo si la string no existe.
Sintaxis:
public static string IsInterned (string strA);
Aquí, strA es una string que se usa para buscar en el grupo interno.
Valor de retorno: el tipo de retorno de este método es System.String . Este método devolverá una referencia a strA si está presente en el grupo interno de CLR (Common Language Runtime). De lo contrario, devuelve nulo.
Excepción: este método dará ArgumentNullException de str es nulo.
A continuación se dan algunos ejemplos para entender la implementación de una mejor manera:
Ejemplo 1:
C#
// C# program to check if the given // string is in intern pool or not using System; class GFG { // main method public static void Main() { // strings string str1 = "Monday"; string str2 = str1 + "-day"; string[] pool = {"Tuesday", "Wednesday", "Thursday", str2}; // checking in intern pool foreach(var item in pool) { // retrieve reference of strings bool value = String.IsInterned(item) != null; if (value) // if the string in intern pool then print Console.WriteLine("{0}: Yes", item); else // if string in not intern pool then print Console.WriteLine("{0}: No", item); } } }
Producción:
Tuesday: Yes Wednesday: Yes Thursday: Yes Monday-day: No
Ejemplo 2:
C#
// C# program to check if the given // string is in intern pool or not using System; class GFG { // main method public static void Main() { // strings string str1 = "Geeks"; string str2 = str1 + "-day"; // this will give error as // null is present in pool string[] pool = {"GFG", "DSA", "C#", null}; // checking in intern pool foreach(var item in pool) { // retrieve reference of strings bool value = String.IsInterned(item) != null; if (value) // if the string in intern pool then print Console.WriteLine("{0}: Yes", item); else // if string in not intern pool then print Console.WriteLine("{0}: No", item); } } }
Error de tiempo de ejecución:
Excepción no controlada:
System.ArgumentNullException: el valor no puede ser nulo.
Nombre del parámetro: str
Referencia:
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA