在 Java 中,如果要声明一个 String 变量,则必须输入:
String value = "Hello World";
等号右侧的字符已经表明 value 的类型是 String。所以,Groovy 允许省略 value 前面的 String 类型变量,并用 def 代替。
def value = "Hello World"
实际上,Groovy 会根据对象的值来判断它的类型。
/** * Created by Jxy on 2018/12/19 9:44 */ String msg = "hello world!" println msg /* def关键字定义变量 带来更高的灵活性 */ def message = "hello groovy!" println message /* groovy世界里一切皆对象 groovy会在运行期间尽可能推断出变量的类型 最坏的情况下groovy不能确定变量的类型会把它当作object */ def number = 129 println number.class
结果:
hello world! hello groovy! class java.lang.Integer Process finished with exit code 0