0

我刚刚熟悉 StackMob 服务器端自定义代码 sdk,我正在尝试获取一个关系字段并以字符串数组的形式遍历它。我怎么做 ?是否可以在不将其解析为数组的情况下对其进行迭代?

           DataService ds = serviceProvider.getDataService();
           List<SMCondition> query = new ArrayList<SMCondition>();
           query.add(new SMEquals("product_id", new SMString(jsonObj.getString("product_id"))));
           List<SMObject> results = ds.readObjects("product", query);
           SMObject product= results.get(0); 
           //product.getValue().get("categories"); how do i get this to be a String array?
4

1 回答 1

2

在最简单的情况下,它看起来像这样:

List<SMValue> categories = (List<SMValue>)(rawObj.getValue().get("categories").getValue());
for (SMValue smString : categories) {
    SMString stringValue = (SMString)smString.getValue();
    //do whatever you want with the string value here
}

显然这里有一些未经检查的强制转换,因此您需要根据您的数据和模式将类型/空检查添加到适当的部分。

于 2013-04-06T17:18:47.373 回答