我有下面的代码,它的工作原理,但我不知道是否有这样做的“更巧妙”的方式:是否有一种更加方便的方法将字符串添加到字符串中?
/**
* 10 digit - #-######-##-#
* 13 digit - ###-#-######-##-#
* */
private formatISBN(String isbn) {
if (isbn?.length() == 10) {
def part1 = isbn.substring(0, 1)
def part2 = isbn.substring(1, 7)
def part3 = isbn.substring(7, 9)
def part4 = isbn.substring(9, 10)
return "${part1}-${part2}-${part3}-${part4}"
} else if (isbn?.length() == 13) {
def part1 = isbn.substring(0, 3)
def part2 = isbn.substring(3, 4)
def part3 = isbn.substring(4, 10)
def part4 = isbn.substring(10, 12)
def part5 = isbn.substring(12, 13)
return "${part1}-${part2}-${part3}-${part4}-${part5}"
} else {
return isbn
}
}
你能解释一下*一部分呢? *在这种情况下做了什么? – Gregg 2012-07-06 01:43:36
@Gregg它解构数组,使其看起来像两个单独的子串参数。不过,我认为,它应该没有它。我不能告诉你为什么会这样,但是,这就是为什么我是鸡肉,并把它留在里面。 – 2012-07-06 01:47:05