2010-12-08 72 views
0
Cursor c = getContent().query(Phones.CONTENT.URI, null, null, null, null); 

您如何阅读这行代码?首先,这是方法调用中的这两个方法调用吗?我认为当你在方法调用中调用方法时,第一个方法调用是第二个方法调用括号内的一个参数。我看到这个错误吗?Android Java方法调用

然后这行代码究竟干什么?

回答

0

getContent()会得到一些对象实例,然后用它来调用query(...)

它是做一些类似的...

Content content = getContent(); 
Cursor c = content.query(...); 

那么这段代码是做正从内容查询的结果(通过query),并把它变成一个Cursor对象,可以是用于访问结果。

+0

谢谢birryree – jojo10 2010-12-08 20:59:58

0

它调用一个方法,然后使用结果作为另一个方法的目标。

请注意,这与Android无关...这是完全正常的Java。

作为一个简单的例子:

String x = "hello there"; 
int y = x.substring(2, 4).length(); 
+0

谢谢Jon。这很有帮助。 – jojo10 2010-12-08 21:00:47

0

关于第二个问题,很难确切地知道这样做不知道的情况下。一个通用的答案是,它会向某些内容提供者查询某些信息,而不传递任何信息(4个空值)。

至于它如何阅读,让我试试。

光标C

这声明类型光标的一个变量(C)

的getContent()

这要求执行类的的getContent()方法或它的超类它返回,我最好的猜测,ContentResolver(或类似的东西)的对象。

查询(....)

上调用返回的值的getContent()方法(最有可能是ContentResolver的)“查询”的方法,同时使一些值的方法。

Phones.CONTENT_URI

静态/常量变量,它定义电话的ContentProvider的URI。

+0

谢谢杰森。也很有帮助。 – jojo10 2010-12-08 21:01:22