【Groovy】map 集合 ( map 集合定义 | 通过 getClass 函数获取 map 集合的类型 | 代码示例 )
一、map 集合定义
声明键值对 , 其中 键 Key 可以 不使用引号 , 可以 使用单引号 ‘’ , 也可以 使用双引号 “” ;
// 创建键值对
// 键 Key 可以不使用引号 , 可以使用单引号 '' , 也可以使用双引号 ""
def map = [J:"Java", "K":"Kotlin", 'G':"Groovy"]
- 1
- 2
- 3
上述创建的 map 集合是 java.util.LinkedHashMap 类型的集合;
二、获取 map 集合类型
之前的博客 【Groovy】集合声明与访问 ( 使用 [] 创建 ArrayList 和 LinkedList 集合 | 集合赋初值 | 使用下标访问集合 | 使用 IntRange 作为下标访问集合 ) 中 , List 集合可以直接使用 .class 方式 , 获取集合的类型 ;
map 集合 不能直接使用 .class 的方式获取类型 , map 变量通过 .class 方式取值 , 代码是绿色的 , 这里将 class 当做了 map 集合的键 , 调用 map.class 是获取 键 class 对应的 值 的 ;
如果要获取 map 变量的类型 , 必须 使用 getClass() 方法 ;
三、代码示例
代码示例 :
class Test {
static void main(args) {
// 创建键值对
// 键 Key 可以不使用引号 , 可以使用单引号 '' , 也可以使用双引号 ""
def map = [J:"Java", "K":"Kotlin", 'G':"Groovy"]
// map 变量的 class 是绿色的
// 这里的用法是一种取值方式 , 系统将 class 当做了键值
// map 类型的集合不能使用 .class 方式获取类型
// 必须使用 getClass() 函数 , 获取当前变量类型
println map.class // 获取键 class 对应的值
println map.getClass() // 获取变量类型
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
执行结果 : 第一次调用 map.class 代码 , 获取键 class 对应的值 , 没有定义该键 Key , 肯定获取不到数据 , 返回 null ; 第二次调用 map.getClass() , 获取的是 map 集合的类型 java.util.LinkedHashMap ;
null
class java.util.LinkedHashMap
- 1
- 2
文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。
原文链接:hanshuliang.blog.csdn.net/article/details/122170069
- 点赞
- 收藏
- 关注作者
评论(0)