[英]How to get values from Java List<E>?
我正在尝试为BMC动作请求系统服务器编写一个迷你插件。
filterAPICall
public abstract List<com.bmc.arsys.api.Value> filterAPICall(ARPluginContext context,
List<com.bmc.arsys.api.Value> pInValues)
throws com.bmc.arsys.api.ARExceptionDescription copied from interface: ARFilterAPIPluggable
给定一组输入值,对其进行处理并返回输出值列表。 还提供了插件上下文和实例数据。
Specified by:
filterAPICall in interface ARFilterAPIPluggable
Parameters:
context - Current context for this plugin call, like username etc.
pInValues - input values
Returns:
output values
Throws:
com.bmc.arsys.api.ARException
com.bmc.arsys.api.Value的描述在这里: http : //www.javasystemsolutions.com/documentation/thirdparty/arapiv75/com/bmc/arsys/api/Value.html
现在,这是我的电话:
public List<Value> filterAPICall(ARPluginContext context, List<Value> pInValues) throws ARException{
context.logMessage(pluginInfo, ARPluginContext.PLUGIN_LOG_LEVEL_INFO, "filterapiCall()");
if (pInValues.size() == 0)
return null;
ArrayList<Value> outValues = new ArrayList<Value>();
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(String.valueOf(pInValues)))));
return outValues;
}
由于某些原因
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(String.valueOf(pInValues)))));
不管用。
我也尝试过:
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(String.valueOf(pInValues.getValue())))));
但是编译器说:
javac IPChecker.java
IPChecker.java:30: cannot find symbol
symbol : method getValue()
location: interface java.util.List<com.bmc.arsys.api.Value>
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(String.valueOf(pInValues.getValue())))));
^
1 error
有任何想法吗?
谢谢托马斯
您应该在迭代。
if (pInValues.size() == 0)
return null;
ArrayList<Value> outValues = new ArrayList<Value>();
for(Value value : pInValues) {
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(String.valueOf(value)))));
}
return outValues;
pInValues
是一个java.util.List
。 List
没有getValue()
方法。
您将需要访问List
一个元素,以便能够对其调用getValue()
。 尝试:
outValues.add(0, new Value(String.valueOf(InetAddresses.isInetAddress(
String.valueOf(pInValues.get(0).getValue())))));
这将转换第一个元素并将其添加到输出列表中。 要获取所有元素,您需要遍历pInValues
的元素并将其一次转换,将每个结果添加到输出列表中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.