2013-05-17 132 views
2

是否可以在xtend中格式化字符串?我正在寻找类似于C中的sprintf的东西。xtend的sprintf等价物

我尝试过在Java中使用String.format,但我不知道它为什么在xtend中不可用。 也许,他们有类似的东西?

回答

3

您可以创建很好的格式化字符串使用XTEXT的XPand language内联,从而(包括换行等):

val myVar = 'Hello, world!' 
println('''This is a string referring to a variable: «myVar». 

It will print out «myVar?.length ?: 0» characters, as the 
variable «IF myVar == null»is«ELSE»is not«ENDIF» null.''') 

如果您需要访问Java的String.format功能,请记住,静态成员使用访问一个双冒号,因此:

val formatted = String::format("Value: %1$.2f", 3.142)