Saltar al contenido

¿Cuál es la diferencia de las cadenas entre comillas simples o dobles en Groovy?

Este artículo fue analizado por expertos así se garantiza la exactitud de nuestro post.

Solución:

Las comillas simples son una cadena java estándar

Las comillas dobles son una cadena con plantilla, que devolverá una GString si tiene una plantilla, o una cadena Java estándar. Por ejemplo:

println 'hi'.class.name    // prints java.lang.String
println "hi".class.name    // prints java.lang.String

def a = 'Freewind'
println "hi $a"            // prints "hi Freewind"
println "hi $a".class.name // prints org.codehaus.groovy.runtime.GStringImpl

Si intenta crear plantillas con cadenas entre comillas simples, no hace nada, por lo que:

println 'hi $a'            // prints "hi $a"

Además, vale la pena leer el enlace proporcionado por julkiewicz en su respuesta (especialmente la parte sobre GStrings que no son cadenas aproximadamente 2/3 del camino hacia abajo).

Tengo entendido que entre comillas dobles string puede contener referencias incrustadas a variables y otras expresiones. Por ejemplo: "Hello $name", "Hello $some-expression-here". En este caso un GString será instanciado en lugar de un regular String. Por otro lado, las cadenas entre comillas simples no admiten esta sintaxis y siempre dan como resultado una simple String. Más sobre el tema aquí:

http://docs.groovy-lang.org/latest/html/documentation/index.html#all-strings

Valoraciones y reseñas

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *