markdown 的GString的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown 的GString的相关的知识,希望对你有一定的参考价值。

GStrings (abreviación de Groovy Strings) es una cadena de texto que contiene expresiones embebidas. Un GString solo puede ser construido con comillas dobles o triples (las cuales veremos en el apartado 2.4). Veamos un ejemplo:
```
def saldo = 1821.14
println "El saldo es de ${saldo} euros"
```	
En el código anterior, vemos que dentro de la cadena de texto pasada a println hemos insertado la variable saldo como si fuera parte de la propia cadena de texto. Esta inserción se hace dentro del operador ${} y es evaluada en tiempo de ejecución. Como se indicaba en el párrafo anterior, podemos insertar cualquier expresión dentro de un GString:
```
def saldo = 1821.14
def mensaje = "El saldo a fecha ${new Date()} es de ${saldo} euros"
println mensaje
```	
Es evidente que el código anterior es mucho mas natural, tanto al escribirlo como al leerlo, que su homologo en Java (el cual necesitaría unir cada parte de texto con cada expresión mediante el operador de concatenación +). Es importante tener siempre presente que un GString no es un String, y que usarlos en combinación puede producir resultados inesperados:
```
def str = "abc" 
def gstr = "${str}" 

println str.equals(gstr) 
println str.equals(gstr.toString()) 
```	
La primera sentencia println devuelve false, ya que ambas clases implementan sus métodos equals() y hashCode() de forma diferente. El mismo problema puede surgir (y surgirá) si mezclamos String's y GString's en sitios tales como las claves de un Map. Una forma de solventar este problema es invocar el método toString() en el objeto GString, como puede verse en la segunda sentencia println del código anterior (la cual sí devuelve true pues ahora ambos objetos a comparar sí son del mismo tipo).

以上是关于markdown 的GString的的主要内容,如果未能解决你的问题,请参考以下文章

在C中使用GNULib&;s GString

从GString运行外部进程

GTK 3+ GtkProgressBar 使用

Array And String(数组和字符串)

我如何忽略此字符串中的整数

使用 string[] 在 XmlNode 中查找最新日期