将Objective-C代码转换为Java代码

时间:2011-09-03 08:47:35

标签: java objective-c if-statement

我需要一点帮助才能将Obj-C代码转换为Java代码。 Obj-C代码:

NSArray * tmp = [_user.userDbAdapter executeQuery:query];
if ([[[tmp objectAtIndex:0] objectForKey:@"mediaType"] intValue] == M_COLLECTION_ANTHEM) 
{
    mtype = SECTYPE_AUDIO;
}

Java代码:

ArrayList<Object> tmp = aUser.userDbAdapter.executeQuery(query);                
if(tmp.get(0)){
    //code                  
}

这是正确的方法吗?我怎样才能在Java中获得objectForKey? 提前谢谢!

1 个答案:

答案 0 :(得分:2)

你的查询将在Obj-C代码中返回一个NSDictionary对象数组...在java中我最好的猜测是它返回一个实现Map接口的对象数组(行为与NSDictionary类相同:{ {3}})。

然后可以使用tmp.get(0).get(“mediaType”)(如果数组中的对象实现了Map接口)。

List<Map>* tmp = aUser.userDbAdapter.executeQuery(query);  
if (tmp.get(0).get("mediaType").intValue() == M_COLLECTION_ANTHEM) 
{
    mtype = SECTYPE_AUDIO;
}