groovy Map

来源:互联网 发布:战舰世界新墨西哥数据 编辑:程序博客网 时间:2024/05/19 12:25

声明: 以下代码大致来源于Groovy入门经典,是在学习的过程中进行的相关测试及记录的内容。

import org.junit.Testclass Map628 extends GroovyTestCase {    @Test    void testExample() {        def careful = [1 : "Jack", "1" : "Tom", a : "a", "b" : "b"]        println careful[1]  //Jack        println careful["1"]  //Tom        println careful[2]  //null        println careful.a //a        println careful["b"] //b    }    @Test    void testMethod() {        def careful = [1 : "Jack", "1" : "Tom", a : "a", "b" : "b"]        println careful.containsKey(1)        println careful.containsKey("1")        println careful.keySet()  // [1, 1, a, b]        println careful.values()  // [Jack, Tom, a, b]        println careful.size()  // 4        println careful.get("f", "found")  //  found,当前map中存在key的value值进行返回,反之返回第二个参数的值,并将设置为访问key的值    }    @Test    void testErgodic() {        //遍历        def careful = [1 : "Jack", "1" : "Tom", a : "a", "b" : "b"]        println "each: "        careful.each {            current ->                println "key : " + current.key + ", value : " + current.value        }        println "\neachWithIndex: "        careful.eachWithIndex{            entry, int i ->                println i + " key : " + entry.key + ", value : " + entry.value        }        println ""        for(Object current : careful.keySet()) {            println "key : " + current + ", value : " + careful.get(current)        }        println ""        Iterator<Map.Entry<Object, String>> it = careful.entrySet().iterator()        while (it.hasNext()) {            Map.Entry<Integer, String> entry = it.next()            println "key : " + entry.getKey() + ", value : " + entry.getValue()        }        println ""        for (Map.Entry<Object, String> entry : careful.entrySet()) {            println "key : " + entry.getKey() + ", value : " + entry.getValue()        }    }}
原创粉丝点击