`
rox
  • 浏览: 43809 次
  • 性别: Icon_minigender_1
  • 来自: 海口
社区版块
存档分类
最新评论

Groovy Map使用的小细节

阅读更多

 

 

 

def s = "hello"

def m = [:]

m << ["$s":'String1']

m << ["hello":'String2']

 

println m

 

assertEquals m.hello, 'String2'

assertEquals m["hello"], 'String2'

assertEquals m.get("hello"), 'String2'

 

assertNull m.$s

assertEquals m["$s"],'String2'

assertEquals m.get("$s"),'String1'

 

最近用Grails做东西出现bug,事后发现是对Groovy中Map使用不了解造成的。

使用了上面这两行代码来分别写入与读取

m << ["$s":'String1']

println m["$s"]

赋值的时候,key是GString类型,如果用上面写法用[]去取,会自动把key转换成String类型,就会取不到,用m.get("$s")可以取到正确的值。

 

如果用String类型做key,以下两种写法,都可以

m << ["$s" as String :'String1']

m["$s"] = 'String1'


 

 

 

分享到:
评论

相关推荐

    groovy+in+action

    本书不仅适合Groovy初学者作为入门指南,同时也为有经验的开发者提供了大量的高级主题和技术细节。通过丰富的示例代码和深入浅出的讲解,读者可以全面掌握Groovy的核心概念和最佳实践。 #### 二、Groovy简介 ...

    实战Groovyforeach剖析

    在遍历Java集合如List、Set时,Groovy同样封装了底层的迭代细节,开发者只需专注于定义要执行的逻辑。 对于Map,Groovy同样提供了方便的遍历方式。由于Map本身并不实现Iterable接口,所以在Java中不能直接用foreach...

    基本支持google+map的应用程序打包说明

    在开发Android应用程序时,集成Google Maps API是一项常见的需求。...在实际开发中,你可能还需要处理更多细节,例如自定义标记、事件监听、离线地图等。确保遵循最佳实践,以提供流畅、用户友好的地图体验。

    android map

    "android map"这个标题暗示了我们将讨论的是如何在Android应用中集成和使用地图。Android提供了Google Maps SDK,使得开发者能够轻松地在应用中添加交互式地图、定位用户当前位置、进行地理编码(将地址转换为经纬度...

    调用GoogleMap源码,点击事件在注释里面.7z

    本文将深入探讨如何调用Google Map源码并处理点击事件,特别是那些在注释中提及的细节。 首先,让我们了解如何在Android项目中引入Google Maps API。你需要在`build.gradle`文件中添加Google Play Services依赖: ...

    android移动应用,使用高德卫星地图绘制地块的形状,计算周长、面积

    为了在地图上绘制地块,我们需要使用`PolygonOptions`类来定义多边形的点集,然后调用`map.addPolygon()`方法将其绘制出来。例如,假设我们有一组经纬度坐标点来表示地块边界: ```java LatLng[] polygonPoints = ...

    用Android Studio制作的地图定位(使用谷歌地图SDK)

    ```groovy dependencies { implementation 'com.google.android.gms:play-services-maps:17.0.0' } ``` 完成依赖添加后,需要在AndroidManifest.xml文件中获取必要的权限,如访问网络和位置服务: ```xml ``` ...

    安卓集成高德地图代码

    以上是集成高德地图API的基本步骤,实际开发中可能需要处理更多细节,如地图事件监听、地图图层控制、自定义覆盖物等。AMap_Android_Navi_Demo_V1.7.0.1_20160203示例代码可作为深入学习的参考资料,涵盖了更复杂的...

    android google地图定位

    ```groovy dependencies { implementation 'com.google.android.gms:play-services-maps:17.0.0' } ``` 接着,要在AndroidManifest.xml文件中申请必要的权限,包括访问网络和位置信息: ```xml ``` 创建一个...

    KS_Roastniyom

    Gradle,一个流行的构建自动化工具,它的配置文件默认使用Groovy编写,允许开发者以声明式的方式定义构建过程。 7. **闭包和元对象编程** Groovy的闭包是其强大之处,它们可以作为参数传递,可以赋值给变量,也...

    AndroidMap:获取地图中的当前位置

    在Android开发中,集成地图功能是一项常见的需求,特别是在构建地理位置相关的应用时。本文将深入探讨如何在...AndroidMap-master这个项目的源码应该包含了实现这一功能的完整示例,你可以通过查阅源码学习更多细节。

    GrailsJava开发人员的圣杯完整版资料.ppt

    这使得已经熟悉Java的开发人员能够快速上手Groovy,同时享受到动态语言带来的便利,如元编程、内置的Map和List方法等。Groovy中的Closure是一种强大的特性,它可以作为可执行代码块进行传递和延迟执行,可以访问和...

    Android高得地图定位

    ```groovy implementation 'com.amap.api:maps:5.4.0' // 请根据实际版本号替换 ``` 接下来,确保你已经在高德地图开放平台注册并创建了应用,获取到API密钥(Key)。这个Key会在地图初始化时使用,用于验证应用的...

    android使用okhttp与服务端网络通信demo

    在Android应用开发中,网络通信是一项至关重要的任务,它使得我们的应用能够获取远程数据、更新内容、实现...记得在实际应用中,还要考虑错误处理、网络状态检查、缓存策略等更多细节,以提升应用的用户体验和稳定性。

    安卓高德地图开发自定义线路规划(按着自己定义的经纬度规划线路)

    在实际开发中,我们还需要处理一些其他细节,比如处理计算路线失败的情况、动态更新路线(当用户改变位置时)、优化路线显示效果等。此外,为了提供良好的用户体验,还可以添加动画效果,让用户更直观地看到路径的...

    android高德地图做的app

    在源代码中,你应该会看到这些功能的实现细节,包括XML布局文件中的配置、Activity中的逻辑处理,以及可能存在的自定义View或Adapter。通过阅读和理解这些代码,你可以更好地掌握Android和高德地图API的结合使用。 ...

    Android集成高德定位

    ```groovy dependencies { implementation 'com.amap.api:maps:5.3.0' implementation 'com.amap.api:location:5.3.0' } ``` 完成依赖添加后,记得同步项目。高德地图SDK需要申请Key,登录高德开放平台创建应用并...

Global site tag (gtag.js) - Google Analytics