【Groovy】map 集合 ( map 集合定义 | 通过 getClass 函数获取 map 集合的类型 | 代码示例 )

举报
韩曙亮 发表于 2022/01/10 22:45:06 2022/01/10
【摘要】 文章目录 一、map 集合定义二、获取 map 集合类型三、代码示例 一、map 集合定义 声明键值对 , 其中 键 Key 可以 不使用引号 , 可以 使用单引号...





一、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

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。