Java 无法遍历数组
我得到一个错误Foreach不适用于表达式类型 我的方法定义如下:Java 无法遍历数组,java,twitter-oauth,Java,Twitter Oauth,我得到一个错误Foreach不适用于表达式类型 我的方法定义如下: UserType statuses = twitter.getFriendsStatuses(UserType.class, null, null); for( UserType users : statuses ) { out.println("<p>"+users.getName()+"</p>"); } 这是因为UserType没有实现。因此,您不能使用增强的foreach循环对其进
UserType statuses = twitter.getFriendsStatuses(UserType.class, null, null);
for( UserType users : statuses )
{
out.println("<p>"+users.getName()+"</p>");
}
这是因为UserType没有实现。因此,您不能使用增强的foreach循环对其进行迭代
编辑:根据您提供的示例,我认为代码是由Jersey生成的。如果是这种情况,那么应该使用Statuses.class而不是UserType.class。然后,您可以获得StatusType的列表,然后可以在for循环中使用该列表,因为该列表实现了Iterable
但话说回来,这只是一个猜测。这是因为UserType没有实现。因此,您不能使用增强的foreach循环对其进行迭代
编辑:根据您提供的示例,我认为代码是由Jersey生成的。如果是这种情况,那么应该使用Statuses.class而不是UserType.class。然后,您可以获得StatusType的列表,然后可以在for循环中使用该列表,因为该列表实现了Iterable
但话说回来,这只是一个猜测。UserType实现了Collection还是Iterable 您只能将每个应用于集合、数组或任何实现Iterable的对象
UserType实现了Collection还是Iterable 您只能将每个应用于集合、数组或任何实现Iterable的对象
你的代码有输入错误吗?因为status不是数组。您的代码中是否有输入错误?因为状态不是数组。这是我得到的:意外元素uri:,本地:用户。期望的元素是status返回的东西:public List getStatus{if status==null{status=new ArrayList;}返回this.status;}这是我得到的:意外元素uri:,local:users。需要的元素是status返回以下内容:public List getStatus{if status==null{status=new ArrayList;}返回this.status;}
public <T> T getFriendsStatuses(Class<T> responseType, String lite, String page) throws UniformInterfaceException {
String[] queryParamNames = new String[]{"lite", "page"};
String[] queryParamValues = new String[]{lite, page};
return webResource.queryParams(getQueryOrFormParams(queryParamNames, queryParamValues)).accept(javax.ws.rs.core.MediaType.TEXT_XML).get(responseType);
}
Statuses statuses = twitter.getFriendsStatuses(Statuses.class, null, null);
for (StatusType statusType : statuses.getStatus()) {
UserType userType = statusType.getUser();
System.out.println("<p>" + userType.getName() + "</p>");
}