ZetCode

Groovy 变量

最后修改于 2025 年 2 月 25 日

变量是任何编程语言的基础。在 Groovy 中,变量用于存储可以在程序中进行操作和检索的数据。本教程介绍了如何在 Groovy 中声明和使用变量,包括动态类型、变量作用域和最佳实践。

变量声明

在 Groovy 中,变量使用 def 关键字声明,或通过显式指定数据类型来声明。Groovy 支持动态类型,这意味着变量的类型在运行时确定。

VariableDeclaration.groovy
// Using 'def' for dynamic typing
def name = "Alice"
def age = 30

println(name)
println(age)

// Explicitly specifying the type
String city = "Wonderland"
int zipCode = 12345

println(city)
println(zipCode)

此示例演示了如何使用动态类型 (def) 和显式类型声明变量。

动态类型

Groovy 是动态类型的,这意味着您在声明变量时无需指定其类型。类型是在运行时根据赋给它的值来推断的。

DynamicTyping.groovy
def value = 42
println(value.getClass())

value = "Groovy"
println(value.getClass())

此示例展示了 Groovy 如何根据赋给变量的值动态更改变量的类型。

变量作用域

Groovy 中的变量可以具有不同的作用域,例如局部、实例或类级别。局部变量在方法或块内声明,并且只能在该作用域内访问。

VariableScope.groovy
class Person {
    def name // Instance variable

    def printName() {
        def greeting = "Hello" // Local variable
        println("${greeting}, ${name}!")
    }
}

def person = new Person()
person.name = "Alice"
person.printName()

此示例演示了 Groovy 中变量的作用域,包括局部变量和实例变量。

常量

Groovy 允许您使用 final 关键字定义常量。一旦赋值,常量的值就不能更改。

Constants.groovy
final PI = 3.14159
println(PI)

// PI = 3.14 // This would cause a compilation error

此示例展示了如何在 Groovy 中定义和使用常量。

变量命名约定

Groovy 遵循标准的变量命名约定。变量名应具有描述性,并且对于多词名称应使用驼峰命名法 (camelCase)。

VariableNaming.groovy
def firstName = "Alice"
def lastName = "Smith"
def ageInYears = 30

println("${firstName} ${lastName} is ${ageInYears} years old.")

此示例演示了 Groovy 中正确的变量命名约定。

使用变量的最佳实践

来源

Groovy 变量文档

在本教程中,我们探讨了如何在 Groovy 中声明和使用变量。Groovy 的动态类型和灵活的语法使其易于有效地处理变量。

作者

我的名字是 Jan Bodnar,我是一名充满激情的程序员,拥有多年的编程经验。我自 2007 年以来一直在撰写编程文章。到目前为止,我已撰写了 1400 多篇文章和 8 本电子书。我在教授编程方面拥有八年以上的经验。

列出 所有 Groovy 教程