Maa*_*oAk 4 java string groovy trim
我正在阅读 Groovy 脚本,发现了很多 trim() 调用,尤其是这种表达式:
x = "ok".trim()
Run Code Online (Sandbox Code Playgroud)
我想知道除了明显的修剪之外,trim() 是否还有一些其他效果可以解释上面的表达式(它也可能只是错误的代码)。
默认定义trim()从字符串的开头和结尾删除空格。因此,在您的应用程序中,如果您使用默认定义,则“ok”.trim() 不会产生任何效果。
但是,如果您更改方法的定义trim(),那么它的行为方式可能会有所不同。现在 String 是一个最终类,因此您无法覆盖它,但 Groovy 为您提供了一个名为 的功能metaclass,该功能允许您在运行时更改定义。
在 groovy控制台上运行以下代码。
String.metaClass.trim = {
//you could have your own trim implementation here for String class
return "Hi"
}
x = "ok".trim()
println x
Run Code Online (Sandbox Code Playgroud)
输出:
Hi
Run Code Online (Sandbox Code Playgroud)
所以,我的结论是,只要您不更改 trim() 的定义,您的代码就不会产生任何效果。