gpt4 book ai didi

java - 无法显示带有括号的对象的结果,Web 服务示例

转载 作者:太空宇宙 更新时间:2023-11-04 08:49:56 24 4
gpt4 key购买 nike

我在 eclipse 中创建了一个 JAX-WS 客户端,它将与用 VB.net 编写的 Web 服务进行通信。我已经让它成功工作了。

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

KitchenItems 有一堆针对各种厨房属性的获取/设置方法。但是,使用 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

有什么建议吗?谢谢!

最佳答案

变量类型 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
List<KitchenItem> list = Arrays.asList(kitchenItem);

但是,由于末尾有额外的 . 或者您在 Eclipse 中进行了严格检查,您的代码可能无法正常工作。泛化 List 应该可以分配给简单的 List

关于java - 无法显示带有括号的对象的结果,Web 服务示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3578422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com