Groovy 的基本数据类型--字符串

Groovy里有两种字符串:java.lang.String和groovy实现的groovy.lang.GString

 

 

String的表现形式
单引号'hello world'String
双引号

"hello world"

"hello, $name"

String

GString

3个单引号

''' h1

h2

h3'''

String
3个双引号

"""h1

h2

h3"""

String or GString
斜杠/^test/String

 

备注:

1、单引号的只能是java.lang.String,即使含有没有转义的$符号

2、如果含有没有转义的$符号,则为String;否则为GString

3、3个单引号或双引号,字符串可以为多行

 

双引号的字符串中,$的使用

如果字符串中含有没有转义的$符号,那么它会在运行期替换

如下事例:

me = 'Tarzan' you = 'Jane' 
line = "me $me - you $you" 
assert line == 'me Tarzan - you Jane' 
date = new Date(0) 
out = "Year $date.year Month $date.month Day $date.date" 
assert out == 'Year 70 Month 0 Day 1' 
out = "Date is ${date.toGMTString()} !" 
assert out == 'Date is 1 Jan 1970 00:00:00 GMT !'

 

    这个替换的写法,类似于velocity中的用法。

    如果想做双引号字符串里显示$这个字符,就要加一个反斜杠做转义,如"\$'

  

   字符(char)

   groovy里,要想获得一个char,必须使用对应的类Character类,也可以通过String转化

   如以下代码

  

 

 

'x' as char

or

'x'.toCharacter()

 

   字符串的使用

  

   除了我们日常使用java String的一些方法,groovy还增强了一些方法

   

greeting = 'Hello Groovy!' 
assert greeting.startsWith('Hello') 
assert greeting.getAt(0) == 'H' 
assert greeting[0] == 'H' 
assert greeting.indexOf('Groovy') >= 0 
assert greeting.contains('Groovy') 
assert greeting[6..11] == 'Groovy' 
assert 'Hi' + greeting - 'Hello' == 'Hi Groovy!' 
assert greeting.count('o') == 3 
assert 'x'.padLeft(3,'_') == '__x' //注意为两个下划线 
assert 'x'.padRight(3,'_') == 'x__' 
assert 'x'.center(3) == ' x ' //前后各加了一个空格 
assert 'x' * 3 == 'xxx' 
assert 'xx' - x == 'x'  

 

   更多的用法,大家可以参考

    1、http://groovy.codehaus.org/groovy-jdk/java/lang/String.html

    2、http://groovy.codehaus.org/gapi/groovy/lang/GString.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值