欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

【Groovy】Groovy 方法调用 ( Groovy 构造函数中为成员赋值 | Groovy 函数的参数传递与键值对参数 | 完整代码示例 )

发布时间:2025/6/17 编程问答 44 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【Groovy】Groovy 方法调用 ( Groovy 构造函数中为成员赋值 | Groovy 函数的参数传递与键值对参数 | 完整代码示例 ) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

文章目录

  • 一、Groovy 构造函数中为成员赋值
  • 二、Groovy 函数的参数传递与键值对参数
  • 三、完整代码示例





一、Groovy 构造函数中为成员赋值



Groovy 类没有定义构造函数 , 但是可以使用如下形式的构造函数 , 为 Groovy 类设置初始值 ;

new 类名(成员名1: 成员值1, 成员名2: 成员值2)

顺序随意 : 成员的顺序随意 , 没有强制要求 , 只需要 成员名 与 成员值对应即可 ;

个数随意 : 成员个数随意 , 可以为所有的属性赋值 , 也可以只为其中的部分属性赋值 ;


如下代码 :

class Student {def namedef age }// 实例化 Student 类 // 正常赋值 def student = new Student(name: "Tom", age: 18) // 颠倒顺序赋值 def student2 = new Student(age: 16, name: "Jerry") // 只为 name 属性赋值 def student3 = new Student(name: "Jim")// 打印两个对象的值 println "student : ${student.name} , ${student.age}" println "student2 : ${student2.name} , ${student2.age}" println "student3 : ${student3.name} , ${student3.age}"

执行结果为 :

student : Tom , 18 student2 : Jerry , 16 student3 : Jim , null



二、Groovy 函数的参数传递与键值对参数



在 Groovy 的构造函数中 , 可以使用

成员名1: 成员值1, 成员名2: 成员值2

类型的参数 , 这是键值对 map 类型的集合 ;

但是对于普通的函数 , 不能使用上述格式 , 如果出现

变量名1: 变量值1, 变量名2: 变量值2

样式的代码 , 会将上述参数识别为一个 map 集合 ;

定义了一个 Groovy 类 , 其中定义的方法接收 222 个参数 ;

class Student {def namedef agedef printValue(a, b) {println "${a}, ${b}"} }

如果使用 student.printValue(a: “Tom”, b: 18) , 就会报错 , 提示只传入了一个 map 集合作为参数 ;

必须使用如下形式 , 才能正确执行 printValue 函数 ;

// 传入的 a: "Tom", b: 18 是第一个参数 , 这是一个 map 集合 // 第二个参数是 "Jerry" 字符串 student.printValue(a: "Tom", b: 18, "Jerry")



三、完整代码示例



完整代码示例 :

class Student {def namedef agedef printValue(a, b) {println "${a}, ${b}"} }// 实例化 Student 类 def student = new Student(name: "Tom", age: 18) def student2 = new Student(age: 16, name: "Jerry") def student3 = new Student(name: "Jim")// 打印两个对象的值 println "student : ${student.name} , ${student.age}" println "student2 : ${student2.name} , ${student2.age}" println "student3 : ${student3.name} , ${student3.age}"// 下面是错误用法 // a: "Tom", b: 18 参数代表了一个键值对集合 , 执行会报错 // student.printValue(a: "Tom", b: 18)// 传入的 a: "Tom", b: 18 是第一个参数 , 这是一个 map 集合 // 第二个参数是 "Jerry" 字符串 student.printValue(a: "Tom", b: 18, "Jerry")

执行结果 :

student : Tom , 18 student2 : Jerry , 16 student3 : Jim , null [a:Tom, b:18], Jerry

总结

以上是生活随笔为你收集整理的【Groovy】Groovy 方法调用 ( Groovy 构造函数中为成员赋值 | Groovy 函数的参数传递与键值对参数 | 完整代码示例 )的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。