list - 如何在groovy/grails中获取列表中一个元素的值

标签 list grails groovy criteria hibernate-criteria

完成createCriteria查询后,我只有一个对象列表,其中包含7个字符串。我想做的只是获得这七个要素之一?

List<Object> result - com.test.MyService.getConfig(String, String, String, String, String, String, String)

这是我在列表中得到的元素:
[name:John, surname:John city:Rome, car:BMW, country:Italy, day:Monday, color:Red,]

例如,我只想访问以获取字符串“country”才能在方法中返回它:

我正在尝试这样做:
result.get(4)

我开始这个错误:
java.lang.IndexOutOfBoundsException: Index: 4, Size: 1

最佳答案

尝试

def oneObject = YourDomainClass.createCriteria().get{
     //add your criteria if any
}
return oneObject.country

之所以获得java.lang.IndexOutOfBoundsException: Index: 4, Size: 1,是因为当您执行YourDomainClass.createCriteria().list{}时,会得到YourDomainClass对象(只有一个对象)的列表。因此,如果要使用YourDomainClass.createCriteria().list{},则应执行:
def objects = YourDomainClass.createCriteria().list{}
if(objects) //check if any object is in list
    return objects[0].country

关于list - 如何在groovy/grails中获取列表中一个元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35205451/

相关文章:

grails - 使用元类覆盖Domain中的gorm方法

java - Nexus sonatype groovy 获取 LDAP 用户

python - 如何在 python 列表中使用切片运算符避免 for 循环中的副作用?

Mysql - 主键以错误的顺序列出

Grails 2.2 到 2.3 中的日期

grails - 我让迁移插件dbm-update说 “validation error”

Jenkins 无需 scriptler 插件即可管理 groovy 脚本

grails - 创建Grails演示应用程序时出现未授权(401)错误

Python从列表的索引中获取值

java - Effective Java - Item 25 - Generics class cast exception 混合列表和数组