我正在尝试在 Eclipse 中使用 JSwing 和 JAVA-WS 创建一个带有 GUI 的库存系统,但我一直在尝试将哈希转换为数组。我根本不是Java专家,所以我来这里寻求帮助。
这是代码:
@Override
public InventoryItem [] getAllInventoryItem() {
ArrayList<InventoryItem> items = new ArrayList<InventoryItem>();
InventoryItem item=null;
for(Map.Entry<String, InventoryItem> e : inventories.entrySet())
{
item=new InventoryItem();
item.setBrand(e.getValue().getBrand());
item.setCode(e.getKey());
item.setName(e.getValue().getName());
items.setPrice(e.getValue().getPrice());
items.add(item);
}
return (InventoryItem []) items.toArray(new InventoryItem[items.size()]);
}
但是当我调用该方法时:
System.out.println((inventory.getAllInventoryItem()));
这就是结果:
[Lcom.lansang.inventory.fx.InventoryItem;@123772c4
我也尝试过:
System.out.println((Arrays.toString(inventory.getAllInventoryItem())));
但是,我仍然没有获取数组内的元素。它只返回这个:
[com.lansang.inventory.fx.InventoryItem@123772c4, com.lansang.inventory.fx.InventoryItem@2d363fb3]
也许这个:
(inventory.getAllInventoryItem()).stream()
.forEach(System.out::println);