Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 向Grails中的数组添加元素_Arrays_Grails_Groovy - Fatal编程技术网

Arrays 向Grails中的数组添加元素

Arrays 向Grails中的数组添加元素,arrays,grails,groovy,Arrays,Grails,Groovy,我是Grails新手,我尝试使用数组。我不敢相信我没有让它工作,但它真的是这样。我现在研究了一个小时,但不知何故我太笨了!;) 我有一门课: package com.test class SimuCacheService { static transactional = false def questionList = [] def getQuestionList() { return questionList } } 我想从antoher

我是Grails新手,我尝试使用数组。我不敢相信我没有让它工作,但它真的是这样。我现在研究了一个小时,但不知何故我太笨了!;)

我有一门课:

package com.test
class SimuCacheService {

    static transactional = false

    def questionList = []

    def getQuestionList() {
        return questionList
    }
}
我想从antoher类访问问题列表,例如简单地添加一个元素

package com.test
class SimulatorController {

    def startSimu = {

        SimuCacheService cacheService = new SimuCacheService();
        def questionList = cacheService.getQuestionList();

        params.eins.each{i->
            System.out.println(i);
            **questionList.add(i);**
        }

        System.out.println(questionList[0]);
        System.out.println(questionList[1]);
    }
}
这不起作用,因为“添加”不存在。我试过使用问题列表[I],但也不起作用。太烦人了,我只想用那个阵列!有人能帮我吗?:-)

这也不起作用:

questionList[questionList.length-1] = i;
:-(

试试:

package com.test
class SimuCacheService {

    static transactional = false

    List questionList = []

}
您的所有其他代码都可以保持不变

请尝试:

package com.test
class SimuCacheService {

    static transactional = false

    List questionList = []

}

所有其他代码都可以保持不变

如果您正在创建此类的新实例,那么它不应该是一个服务-将其放在src/groovy中。另外,请记住,如果这是一个真正的服务,并且您使用
def simuCacheService
注入依赖项,那么您将面临重大的线程安全问题。默认情况下,服务是单例的,因此l实例的用户将共享相同的
questionList
list。如果您正在创建此类的新实例,那么它不应该是一个服务—请将它放在src/groovy中。此外,请记住,如果这是一个您使用
def simuCacheService
依赖项注入的真实服务,那么您将面临重大的线程安全问题。服务默认情况下重新设置Singleton,因此实例的所有用户将共享相同的
questionList
list。