Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Dominando strings en C#: Fundamentos, operaciones y técnicas avanzadas

Dominando strings en C#: Fundamentos, operaciones y técnicas avanzadas

En este tutorial, aprenderemos sobre string en C# y sus métodos con la ayuda de ejemplos.

En C#, un string es una secuencia de caracteres. Por ejemplo, "hello" es un string que contiene una secuencia de caracteres 'h', 'e', 'l', 'l' y 'o'.

Usamos la palabra clave string para crear un string. Por ejemplo:

// crea un string
string str = "C# Programming";

Aquí, hemos creado un string llamado str y asignado el texto "C# Programming". Usamos comillas dobles para representar strings en C#.


Ejemplo: Crear string en C#

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // crea string
            string str1 = "C# Programming";
            string str2 = "Programiz";
            // imprime string
            Console.WriteLine(str1);
            Console.WriteLine(str2);
            Console.ReadLine();
        }
    }
}

Salida

C# Programming
Programiz

En el ejemplo anterior, hemos creado dos strings llamados str1 y str2 e impreso.

Nota: Una variable string en C# no es de tipos primitivos como int, char, etc. En su lugar, es un objeto de la clase String.


Operaciones con strings

C# string proporciona varios métodos para realizar diferentes operaciones en strings. Veremos algunas de las operaciones de string más usadas.

1. Obtener la longitud de un string

Para encontrar la longitud de un string, usamos la propiedad Length. Por ejemplo:

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // crea string
            string str = "C# Programming";
            Console.WriteLine("string: " + str);
            // obtiene longitud de str
            int length = str.Length;
            Console.WriteLine("Length: " + length);
            Console.ReadLine();
        }
    }
}

Salida

string: C# Programming
Length: 14

En el ejemplo anterior, la propiedad Length calcula el número total de caracteres en el string y lo devuelve.


2. Unir dos strings en C#

Podemos unir dos strings en C# usando el método Concat(). Por ejemplo:

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // crea string
            string str1 = "C# ";
            Console.WriteLine("string str1: " + str1);
            // crea string
            string str2 = "Programming";
            Console.WriteLine("string str2: " + str2);
            // une dos strings
            string joinedString = string.Concat(str1, str2);
            Console.WriteLine("Joined string: " + joinedString);
            Console.ReadLine();
        }
    }
}

Salida

string str1: C#
string str2: Programming
Joined string: C# Programming

En el ejemplo anterior, hemos creado dos strings llamados str1 y str2. Observa la sentencia:

string joinedString = string.Concat(str1, str2);

Aquí, el método Concat() une str1 y str2 y lo asigna a la variable joinedString.

También podemos unir dos strings usando el operador + en C#. Para aprender más, visita C# string Concat.


3. Comparar dos strings en C#

En C#, podemos hacer comparaciones entre dos strings usando el método Equals(). El método Equals() verifica si dos strings son iguales o no. Por ejemplo:

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // crea string
            string str1 = "C# Programming";
            string str2 = "C# Programming";
            string str3 = "Programiz";
            // compara str1 y str2
            Boolean result1 = str1.Equals(str2);
            Console.WriteLine("string str1 and str2 are equal: " + result1);
            // compara str1 y str3
            Boolean result2 = str1.Equals(str3);
            Console.WriteLine("string str1 and str3 are equal: " + result2);
            Console.ReadLine();
        }
    }
}

Salida

string str1 and str2 are equal: True
string str1 and str3 are equal: False

En el ejemplo anterior, hemos creado 3 strings llamados str1, str2 y str3. Aquí, usamos el método Equals() para verificar si un string es igual a otro.


Inmutabilidad de objetos String

En C#, los strings son inmutables. Esto significa que, una vez creamos un string, no podemos cambiar ese string.

Para entenderlo, considera un ejemplo:

// crea string
string str = "Hello ";

Aquí, hemos creado una variable string llamada str. La variable contiene el string "Hello ".

Ahora supongamos que queremos cambiar el string str.

// añade otro string "World"
// al string anterior
str = string.Concat(str, "World");

Aquí, usamos el método Concat() para añadir el string "World" al string anterior str.

Pero, ¿cómo podemos modificar el string si son inmutables?

Veamos qué ha pasado:

  1. C# toma el valor del string "Hello ".
  2. Crea un nuevo string añadiendo "World" al string "Hello ".
  3. Crea un nuevo objeto string, le da el valor "Hello World" y lo almacena en str.
  4. El string original, "Hello ", que fue asignado a str es liberado para recolección de basura porque ninguna otra variable mantiene una referencia a él.

Secuencias de escape en strings

El carácter de escape se usa para escapar algunos de los caracteres presentes dentro de un string. En otras palabras, usamos secuencias de escape para insertar caracteres especiales dentro del string.

Supongamos que necesitamos incluir comillas dobles dentro de un string.

// incluir comilla doble
string str = "This is the "String" class";

Como los strings se representan con comillas dobles, el compilador tratará "This is the " como el string. Y el código anterior causará error.

Para resolver esto, usamos el carácter de escape \" en C#. Por ejemplo:

// usa el carácter de escape
string str = "This is the \"String\" class.";

Ahora, usando \ antes de la comilla doble ", podemos incluirla en el string.

Algunas de las secuencias de escape en C# son:

Secuencia de escapeNombre del carácter
\'comilla simple
\"comilla doble
\\barra invertida
\0null
\nnueva línea
\ttabulación horizontal

Interpolar strings

En C#, podemos usar interpolación de strings para insertar variables dentro de un string. Para interpolación, el literal de string debe comenzar con el carácter $. Por ejemplo:

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // crea string
            string name = "Programiz";
            // interpolación de string
            string message = $"Welcome to {name}";
            Console.WriteLine(message);
            Console.ReadLine();
        }
    }
}

Salida

Welcome to Programiz

En el ejemplo anterior, estamos usando la variable name dentro del string message.

string message = $"Welcome to {name}";

Observa que:


Métodos de string en C#

Hay varios métodos de string en C#. Algunos de ellos son:

MétodosDescripción
Format()devuelve un string formateado
Split()divide el string en subcadenas
Substring()devuelve subcadena de un string
Compare()compara objetos string
Replace()reemplaza el carácter viejo especificado por el nuevo
Contains()verifica si el string contiene una subcadena
Join()une los strings dados usando el separador especificado
Trim()elimina espacios en blanco al inicio y final
EndsWith()verifica si el string termina con el string dado
IndexOf()devuelve la posición del carácter especificado en el string
Remove()devuelve caracteres de un string
ToUpper()convierte el string a mayúsculas
ToLower()convierte el string a minúsculas
PadLeft()devuelve string rellenado con espacios o carácter Unicode a la izquierda
PadRight()devuelve string rellenado con espacios o carácter Unicode a la derecha
StartsWith()verifica si el string comienza con el string dado
ToCharArray()convierte el string a array char
LastIndexOf()devuelve índice de la última ocurrencia de un string especificado

Preguntas frecuentes

1. ¿Cómo crear un array de strings en C#?

Un array de strings se crea igual que un array para tipos de datos. Por ejemplo:

using System;
namespace CsharpString {
    class Test {
        public static void Main(string[] args) {
            // array de tipo string
            string[] animals = {"Monkey", "Dog", "Cat"};
            // imprime elementos del array
            Console.WriteLine(animals[0]);
            Console.WriteLine(animals[1]);
            Console.WriteLine(animals[2]);
            Console.ReadLine();
        }
    }
}

Salida

Monkey Dog Cat

2. Diferencia entre string y String en C#

No hay diferencia técnica entre string y String. En C# string es un alias para System.String.

Se recomienda usar string ya que funciona incluso sin using System;.

Lenguaje C

  1. Dominando funciones de cadena en C++: strcpy, strcat, strlen, strcmp – Ejemplos prácticos
  2. Cadenas en C hechas fáciles: Declaración, entrada, salida y funciones de biblioteca
  3. Domine el Método strip() de Python: Guía Completa y Ejemplos Prácticos
  4. Domine str.count() en Python: Cómo Contar Caracteres y Subcadenas con Ejemplos
  5. Domine el Formateo de Strings en Python con format(): Ejemplos Claros
  6. Python len(): Guía Práctica para Medir Longitud de Objetos
  7. Domine el Método String.find() en Python: Sintaxis, Ejemplos y Alternativas
  8. Dominar Strings en Java: Creación, Métodos y Mejores Prácticas
  9. Dominando representaciones String en Enums de Java
  10. Entendiendo Java String.charAt(): Sintaxis, tipo de retorno, excepciones y ejemplo práctico
  11. Dominando Java String.endsWith(): Cómo comprobar sufijos de cadena con ejemplos