2010-08-26 59 views
1

我已经在eclipse中创建了一个JAX-WS客户端,它将与在VB.net中编写的Web服务进行通信。我已经得到这个成功的工作。显示来自括号括起来的对象的结果,Web服务示例

我的一个Web服务方法将返回类型KitchenItems的obect []

的KitchenItems有一堆的各种厨房属性get/set方法。但是,使用KitchenItems时,我无法访问这些方法[]

括号是否将对象转换为数组?我怎样才能访问KitchenItems中的get方法?我有自动生成的测试类没有以提取结果如下:

KitchenItem[] kitchenItem= soap.getKitchenItemsByLoginId(kitchenId); 
List list = Arrays.asList(kitchenItem.); 
String result = list.toString(); 

理想情况下,我愿与对象的工作,而不是转换为字符串。上面不会让我把数组转换为列表无论如何,因为它会抛出错误:

Type mismatch: cannot convert from List<KitchenItem> to List 

有什么建议吗?谢谢!

回答

1

变量类型的方括号KitchenItem[]或变量名称kitchenItem []指示该变量是一个数组。

使用方括号运算符访问数组的元素,其中第一个元素以kitchenItem[0]的形式访问,数组有length字段用于确定数组中的元素数。

假设我们有一个项目的数组:

KitchenItem[] kitchenItems = soap.getKitchenItemsByLoginId(kitchenId); 

要打印数组中的第一个元素的名称:

System.out.println(kitchenItems[0].getName()); 

要打印的数组中最后一个元素的名称:

System.out.println(kitchenItems[kitchenItems.length - 1].getName()); 

人们可以打印每个KitchenItem的所有名称与此代码:

KitchenItem[] kitchenItems = soap.getKitchenItemsByLoginId(kitchenId); 
for (int i = 0; i < kitchenItems; i++) { 
    KitchenItem kitchenItem = kitchenItems[i]; 
    System.out.println(kitchenItem.getName()); 
} 

该阵列可以变成使用

List<KitchenItem> list = Arrays.asList(kitchenItem); 

一个泛型化List但是你的代码可能无法正常工作,因为在年底额外.还是因为你有严格的在Eclipse中检查上。通用的List应该可以分配给一个简单的List