Ir al contenido principal

Groovy - Referencia #11

GString

Las GString (Groovy String), aunque es una cadena, la misma agrega funcionalidad a la vieja cadena de Java, en un GString podemos hacer evaluaciones de variables o propiedades de clases, disponibles en el "scope" de la cadena, las operaciones se realizan de una manera muy similar a como se harían en EL (expression language) utilizado en librerías tales como JSTL.


void theGString () {

def name = "Jon"
def now = new Date ()
println("\nGString")
(1..3).each { print "*** " }
println("")

println "Hello word!".class
println "Hello ${name}".class

println """
Hi my names is ${name},
now is "${now}"
"""
} // theGString.

Salida
class java.lang.String
class org.codehaus.groovy.runtime.GStringImpl

Hi my names is Jon,
now is "Mon Feb 02 17:11:19 CST 2009"


Como se puede notar, al utilizar las expresiones ${} podemos utilizar variables dentro del scope e inclusive inspeccionarlas, de esta manera se tenemos una lista de usuario, los cuales tienen nombre y apellidos, podríamos hacer lo siguiente:

println "Hello ${users[0].name.lastName}"

La anterior sentencia, obtiene el primer elemento de una coleccion, el atributo name de ese objeto y el apellido del objeto name.

Comentarios

Entradas más populares de este blog

Pasos para remover Postgresql 8.3 en MAC OS

Tomado de: http://forums.enterprisedb.com/posts/list/1437.page In Mac OSX: (Assuming Default Locations) Via uninstaller: 1) In the installation directory, there will be a uninstall-postgresql.app file will be there, executing (double clicking) that will uninstall the postgresql installation. Manual Uninstallation: 1) Stop the server sudo /sbin/SystemStarter stop postgresql-8.3 2) Remove menu shortcuts: sudo rm -rf /Applications/PostgreSQL 8.3 3) Remove the ini file sudo rm -rf /etc/postgres-reg.ini 4) Removing Startup Items sudo rm -rf /Library/StartupItems/postgresql-8.3 5) Remove the data and installed files sudo rm -rf /Library/PostgreSQL/8.3 6) Delete the user postgres sudo dscl . delete /users/postgres

Enrique Bunbury - 3 de Octubre 2009 - Heredia CR

Via periodico la nacion, me entero de este conciertazo: http://www.nacion.com/viva/2009/julio/29/viva2042768.html Ah esperar mas detalles y la venta de la entradas, "Para solo si me perdonas ..." EDIT ..... Via http://www.enriquebunbury.com/hellville.aspx (gracias a andres por su post) venta anticipada: Entradas a la venta a partir del 13 de agosto en: www.costaricaticket.com Por ahi estare anunciando, el 13 si las estan vendiendo!

Impensando acerca de las referencias en Java

Fue hace ya algún tiempo que pase un rato discutiendo con algunos compañeros acerca de si existe o no el paso por referencia; el discurso fue mucho hacia que en Java el comportamiento, en el supuestamente pasamos por referencia un objeto y por valor los objetos primitivos creo mucha polémica. Para ubicarnos en contexto veamos el siguiente ejemplo. public static void main(String[] args) { int value = 10; changeValue(value); System.out.println("value = " + value); User user = new User(); Name name = new Name(); user.setName(name); name.setName("jsanca"); name.setLastName("XXX"); user.setPassword("123queso"); System.out.println("user: " + user.getName().getName() + ", " + user.getName().getLastName() + ", " + user.getPassword()); changeValue1(user); System.out.println("user: " + user.getName().getName() + ", " + user.getName().getLastName() + ", " + user.ge...