1. 数组定义
2. 查看某对象的类名
3. 字符串转为数组
(1)
输出:[1, 2, 3, 4, 5]
(2)
输出:[1, 2, 3, 4, 5]
4. 判断一个对象是否是某个类的实例,除了使用JAVA的instanceof以外,还可以:
输出:true
5. 格式化日期
输出:2009年24月24日 03:12:06
输出:2009年24月24日 15:12:06
6. 字符串查找
输出:[rotator, reviver]
7. 字符串反转
输出:
=======
gnirts
this?" see you "can said, Yoda
=======
8. 字符串转化为字符数组
输出:adelnpy
9. 字符串加减操作
输出:potato
10. 关于字符串:
简单字符串可以用单引号和双引号, 但如果使用GString, 则必须使用双引号. 比如 “$foo, hello world”
多行字符串则可以使用 “”" (3个双引号), 例如:
如果对这个text进行输出,会发现输出是按原样式输出的,即换行符也输出. 这在处理类似 HTML 代码时时特别有用的.
11. 右边截取字符串
输出:7818
12. 字符串左侧补位
输出:****7818
注:padRight是右侧补位,center是“如果字符数量小于指定参数,则两边补第二个参数”
参考:http://chenfeng0104.iteye.com/blog/606153
13. 用Base64加解密
14. 金额转换-将元转换为分,有小数保留小数,无小数则显示整数
15. 最简单的连接数据库打印数据
16. 一次性转换字符数组为Long数组
答案:
17.在Java中,要想遍历一组人并收集人名。得这样写:
用Groovy,可以这么写:
呵呵,简单吧。还可以这样写:
18. 处理JSON
输出:
19. 数字求和
def str = ['.jpg', '.bmp', '.gif', '.png' ] as String[]
2. 查看某对象的类名
println xxxobj.class.simpleName
3. 字符串转为数组
(1)
println "[1,2,3,4,5]".tokenize( "[, ]" ).collect { it as Integer }
输出:[1, 2, 3, 4, 5]
(2)
println "1,2,3,4,5".tokenize( "," ).collect { it as Integer }
输出:[1, 2, 3, 4, 5]
4. 判断一个对象是否是某个类的实例,除了使用JAVA的instanceof以外,还可以:
println "test" in String
输出:true
5. 格式化日期
def x = new Date()
println x.format("yyyy年mm月dd日 hh:MM:ss")
输出:2009年24月24日 03:12:06
def x = new Date()
println x.format("yyyy年mm月dd日 HH:MM:ss")
输出:2009年24月24日 15:12:06
6. 字符串查找
def words = ['bob', 'alpha', 'rotator', 'omega', 'reviver']
def bigPalindromes = words.findAll {w -> w == w.reverse() && w.size() > 5}
println bigPalindromes
输出:[rotator, reviver]
7. 字符串反转
println 'string'.reverse()
def string = 'Yoda said, "can you see this?"'
def revwords= string.split(' ').toList().reverse().join(' ')
//assert revwords== 'this?" see you "can said, Yoda'
println revwords
输出:
=======
gnirts
this?" see you "can said, Yoda
=======
8. 字符串转化为字符数组
def str = "an apple a day"
println str.toList().unique().sort().join()
输出:adelnpy
9. 字符串加减操作
def s = 'hippopotamus'
println s - 'hippo' - 'mus' + 'to'
输出:potato
10. 关于字符串:
简单字符串可以用单引号和双引号, 但如果使用GString, 则必须使用双引号. 比如 “$foo, hello world”
多行字符串则可以使用 “”" (3个双引号), 例如:
def name = "snowfox"
def text = """\
hello there ${name}
how are you today?
"""
println text
如果对这个text进行输出,会发现输出是按原样式输出的,即换行符也输出. 这在处理类似 HTML 代码时时特别有用的.
11. 右边截取字符串
def sno = "10207818"
println sno[-4..-1]
输出:7818
12. 字符串左侧补位
def sno = "10207818"
println sno[-4..-1].padLeft(8, "*")
输出:****7818
注:padRight是右侧补位,center是“如果字符数量小于指定参数,则两边补第二个参数”
参考:http://chenfeng0104.iteye.com/blog/606153
13. 用Base64加解密
def test_str = "我是中国人"
def authString = test_str.getBytes().encodeBase64().toString()
println "经Base64加密后:${authString}"
println "由Base64解密后:${new String(authString.decodeBase64())}"
14. 金额转换-将元转换为分,有小数保留小数,无小数则显示整数
def x = "0.1" as Double
BigDecimal b = new BigDecimal(Double.toString(x*100)).setScale(0, BigDecimal.ROUND_HALF_UP)
println b
15. 最简单的连接数据库打印数据
import groovy.sql.Sql
def sql = Sql.newInstance("jdbc:oracle:thin:@10.14.3.112:1521:hosp50", "scott", "tiger")
sql.eachRow("select * from function_info start with fi_parent_id=0 connect by prior fi_id=fi_parent_id"){println it}
16. 一次性转换字符数组为Long数组
def ids = (params.id)
这个数组里面数据都是 String的 我想转换成long型的
答案:
ids.collect{it.toLong()}
17.在Java中,要想遍历一组人并收集人名。得这样写:
List names = new ArrayList();
for (Iterator iterator = people.iterator(); iterator.hasNext();) {
Person person = (Person) iterator.next();
names.add(person.getName());
}
System.out.println(names);
用Groovy,可以这么写:
def names = people*.name
println names
呵呵,简单吧。还可以这样写:
def names = people.collect {it.name}
println names
18. 处理JSON
import groovy.json.JsonBuilder
import groovy.json.JsonOutput
def json = new JsonBuilder()
json.state{
capital "Denver"
majorCities "Denver", "Colorado Springs", "Fort Collins"
}
println json
//JsonBuilder也有类似的方法,JsonBuilder.toPrettyString(),效果相同
println JsonOutput.prettyPrint(json.toString())
输出:
{"state":{"capital":"Denver","majorCities":["Denver","Colorado Springs","Fort Collins"]}}
{
"state": {
"capital": "Denver",
"majorCities": [
"Denver",
"Colorado Springs",
"Fort Collins"
]
}
}
19. 数字求和
def x = [8878,3034,152021,75163,8000,992,183,326,1000].sum()
println x