Arrays 向Grails中的数组添加元素
我是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
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。