Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
¿Qué significa $ antes de una cadena?

Iba a usar una cadena textual pero escribí por error $ en lugar de @ .

Pero el compilador no me dio ningún error y se compiló correctamente.

Quiero saber qué es y qué hace. Lo busqué pero no pude encontrar nada.

Sin embargo, no es como una cadena textual porque no puedo escribir:

 string str = $"text\";

¿Alguien sabe qué significa $ antes de la cadena en C#?

 string str = $"text";

Estoy usando Visual Studio 2015 CTP.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

$ es la abreviatura de String.Format y se usa con interpolaciones de cadenas, que es una característica nueva de C# 6. Como se usa en su caso, no hace nada, al igual que string.Format() no haría nada.

Se destaca cuando se usa para construir cadenas con referencia a otros valores. Lo que antes se tenía que escribir como:

 var anInt = 1; var aBool = true; var aString = "3"; var formated = string.Format("{0},{1},{2}", anInt, aBool, aString);

Ahora se convierte en:

 var anInt = 1; var aBool = true; var aString = "3"; var formated = $"{anInt},{aBool},{aString}";

También hay una forma alternativa, menos conocida, de interpolación de cadenas usando $@ (el orden de los dos símbolos es importante). Permite que las características de una cadena @"" se mezclen con $"" para admitir interpolaciones de cadenas sin la necesidad de \\ en toda la cadena. Así que las siguientes dos líneas:

 var someDir = "a"; Console.WriteLine($@"c:\{someDir}\b\c");

dará salida:

 c:\a\b\c
over 4 years ago · Santiago Trujillo Denunciar

0

Crea una cadena interpolada .

Desde MSDN

Se utiliza para construir cadenas. Una expresión de cadena interpolada parece una cadena de plantilla que contiene expresiones. Una expresión de cadena interpolada crea una cadena reemplazando las expresiones contenidas con las representaciones ToString de los resultados de las expresiones.

ex :

 var name = "Sam"; var msg = $"hello, {name}"; Console.WriteLine(msg); // hello, Sam

Puede usar expresiones dentro de la cadena interpolada

 var msg = $"hello, {name.ToLower()}"; Console.WriteLine(msg); // hello, sam

Lo bueno de esto es que no necesita preocuparse por el orden de los parámetros como lo hace con String.Format .

 var s = String.Format("{0},{1},{2}...{88}",p0,p1,..,p88);

Ahora, si desea eliminar algunos parámetros, debe ir y actualizar todos los recuentos, lo cual ya no es el caso.

Tenga en cuenta que el antiguo y buen string.format sigue siendo relevante si desea especificar información cultural en su formato .

over 4 years ago · Santiago Trujillo Denunciar

0

Código de ejemplo

 public class Person { public String firstName { get; set; } public String lastName { get; set; } } // Instantiate Person var person = new Person { firstName = "Albert", lastName = "Einstein" }; // We can print fullname of the above person as follows Console.WriteLine("Full-Name - " + person.firstName + " " + person.lastName); Console.WriteLine("Full-Name - {0} {1}", person.firstName, person.lastName); Console.WriteLine($"Full-Name - {person.firstName} {person.lastName}");

Producción

 Full-Name - Albert Einstein Full-Name - Albert Einstein Full-Name - Albert Einstein

Son cadenas interpoladas . Puede usar una cadena interpolada en cualquier lugar donde pueda usar un literal de cadena. Cuando la ejecución de su programa ejecutaría el código con el literal de cadena interpolado, el código calcula un nuevo literal de cadena evaluando las expresiones de interpolación. Este cálculo se produce cada vez que se ejecuta el código con la cadena interpolada.

El siguiente ejemplo produce un valor de cadena en el que se han calculado todos los valores de interpolación de cadena. Es el resultado final y tiene tipo string. Todas las apariciones de llaves dobles (“{{“ and “}}”) se convierten en una sola llave.

 string text = "World"; var message = $"Hello, {text}";

Después de ejecutar las 2 líneas anteriores, message variable contiene "Hola, mundo".

 Console.WriteLine(message); // Prints Hello, World

Referencia - MSDN

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda