【发布时间】:2017-10-30 17:06:06
【问题描述】:
private List<String> add() {
List<String> strlist = new ArrayList<String>();
return strList;
}
public void methodOne() {
List<String> strList = this.add();
}
public void methodtwo() {
// need to use the list in methodOne.
}
我有一个返回List 的私有方法。我通过在methodOne() 中调用它来执行add() 方法并存储列表值。现在我需要在methodTwo() 方法中使用该列表,而不执行add() 方法或methodOne()。
方法只不过是 RobotFrame Work 中的关键字
是否可以在 Ride 中创建一个 List 变量并存储来自 Method One() 的列表并在 Method Two() 中使用它?
【问题讨论】:
-
这些都是本地定义的列表,如果你不能使用
add,这将不起作用。methodOne中的List也是本地定义的,因此如果您不返回List<String>也不将其存储在与methodOne范围不同的任何变量中,则此List将很快被垃圾回收你永远无法参考它。 -
从习惯 Java 的人的角度来看,这是一个奇怪的问题。您能解释一下为什么要在
methodtwo中使用与在methodOne中相同的列表吗?如果您希望多个函数通过对其进行变异来处理同一个对象,则一种解决方案是使用类成员而不是局部变量。但是,您在add方法中所做的初始化可能没有意义。
标签: java robotframework