Infelizmente, Java permite apenas uma maneira de especificar literais string ("") o texto entre aspas duplas. Logo, se uma string tem um monte de barras invertidas, já fica difícil de entender.
O Groovy, diferentemente de Java, reconhece que nem todo o uso de literais de string é o mesmo. Nele temos um leque de opções, e as maravilhosas GStrings.
No groovy temos os seguintes tipos de strings:
Caracteres | Exemplo | GString |
Aspas Simples | 'oi Groovy' | Não |
Aspas Duplas | "oi Groovy" | Sim |
Temos também as aspas triplas simples e as triplas duplas, que serão exemplificadas mais tarde.
Uma coisa importante é que, uma String Java é uma instância de java.lang.String e uma GString é uma instância de groovy.lang.GString. No Groovy, quando uma declaração de aspas simples é encontrada, é criada um tipo java.lang.String.
Se você é um cara esperto, ligado, deve ter pensado... se algo entre aspas simples, como um 'c' é um java.lang.String, como é uma representação de char no Groovy?
Para isso, precisamos informar o nosso amigo.
def comoUmChar = 'c' as charDesta forma, a variável fará uma referência a java.lang.Character e não a java.lang.String. Simples né?
Agora chega de conversa e vamos a alguns exemplos de como trabalhar com Strings em Groovy.
// Duas java.lang.String e uma GString def eu = 'Lucas' def esposa = 'Cristiane' // Note o $. Em muitas linguagens isso existe, copiaram mesmo! def linha = "Eu $eu - Esposa $esposa" assert linha == 'Eu Lucas - Esposa Cristiane' assert linha instanceof GString def data = new Date() // Mais uma coisa de Groovy. Quando chamo obj.prop, seria como estar chamando obj.getProp(). // No Groovy Bean, isso é transparente, tanto para o get como para o set, ou seja, obj.prop = algo seria obj.setProp(algo) def dataDetalhe = "Ano $data.year - Mês $data.month - Dia - $data.date" // Alguns métodos comuns de String def saudacao = "Hello Groovy" assert saudacao.startsWith("Hello") assert "H" == saudacao.getAt(0) assert saudacao.count("G") == 1 assert saudacao[3..6] == "lo G" // Substring!!!!
É isso ai pessoal, agora já temos noção de como Groovy veio ajudar a nossa vida.
Em um próximo post vou falar sobre expressões regulares. Abraços!
Nenhum comentário:
Postar um comentário