使用 Java 获取项目值集的索引
Geting Index Of set of Item values using Java
是否可以像使用数组中的 indexOf()
一样使用 Java 获取文档中一组值的索引?我试图在 Notes 帮助中查找它,但找不到有用的提示。
不,您必须从文档中提取文本并进行解析。看看here.
首先,您必须使用 getValues()
创建项目值的向量,然后您可以使用 indexOf()
:
Item item = doc.getFirstItem(itemName);
int index = item.getValues().indexOf("yourValue")
作为替代方案,您可以使用文档的 getItemValue()
来获取项目值的向量:
int index = doc.getItemValue(itemName).indexOf("yourValue")
在这行代码之后...
Vector v = session.evaluate("@Member(\"value\";\"itemName\")");
v.firstElement()
将包含您要搜索的值的索引,但它是从一开始而不是从零开始。即,如果项目中的第一个值与您要查找的值匹配,则 return 为 1,而不是 indexOf() 和 Java ArrayList.
所期望的 0
注意:在这种情况下,evaluate() return 是一个向量这一事实似乎很奇怪,但大多数 Notes 公式语言结构都可以 return 单个值或列表,取决于文档中的值,因此它始终 return 是一个向量,即使公式实际上只有 return 一个值。
是否可以像使用数组中的 indexOf()
一样使用 Java 获取文档中一组值的索引?我试图在 Notes 帮助中查找它,但找不到有用的提示。
不,您必须从文档中提取文本并进行解析。看看here.
首先,您必须使用 getValues()
创建项目值的向量,然后您可以使用 indexOf()
:
Item item = doc.getFirstItem(itemName);
int index = item.getValues().indexOf("yourValue")
作为替代方案,您可以使用文档的 getItemValue()
来获取项目值的向量:
int index = doc.getItemValue(itemName).indexOf("yourValue")
在这行代码之后...
Vector v = session.evaluate("@Member(\"value\";\"itemName\")");
v.firstElement()
将包含您要搜索的值的索引,但它是从一开始而不是从零开始。即,如果项目中的第一个值与您要查找的值匹配,则 return 为 1,而不是 indexOf() 和 Java ArrayList.
注意:在这种情况下,evaluate() return 是一个向量这一事实似乎很奇怪,但大多数 Notes 公式语言结构都可以 return 单个值或列表,取决于文档中的值,因此它始终 return 是一个向量,即使公式实际上只有 return 一个值。