2015-06-27 102 views
-4

我想要做的是,如果例如我有一个我想要销售的物品的列表,那么每个物品都有一个字符串名称和int价格,并将它们添加到数组中是一个arrayList我不知道什么会更好,因为我希望它是userinput),并说我添加了很多元素,像这样的数组:[item1,50,item2,100,item3,200]我想要什么要做的就是提取其中一个物品,例如item1的价格为50,然后出售其价格等于或大于价格的物品,然后将卖给100的物品1放入我卖出的物品的另一个阵列中。我希望能够对每件物品都做到这一点。 我甚至不想开始编码,因为我不知道该怎么做。从数组中提取元素并将它们相减

+2

“我甚至不想开始编码”。什么是短语 –

+2

“我甚至不想开始编码”比付钱给别人代码。这不是慈善事业。 –

+0

我只是说因为我知道,如果我开始做这件事,但没有真正理解它,它就没用了。 – user3732562

回答

0

只要每个项目都是独一无二的,我会用这一个Map

例如说我有:

  1. 苹果
  2. TWIX

然后,我想跟踪我有多少物品,以及哪些物品已售出:

Map<String,List<Item>> itemsSold = new HashMap<>(); 

然后创建一个Abstract类的每个项目,将类似于此:

public abstract class Item { 

    private String ItemId; 
    private double ItemCost; 
    private double ItemSellPrice; 
    private boolean ItemSold; 

    public Item(String ItemId, double ItemCost) { 
     this.ItemId = ItemId; 
     this.ItemCost = ItemCost; 
    } 

    public String getItemId() { 
     return ItemId; 
    } 

    public void setItemId(String ItemId) { 
     this.ItemId = ItemId; 
    } 

    public double getItemCost() { 
     return ItemCost; 
    } 

    public void setItemCost(double ItemCost) { 
     this.ItemCost = ItemCost; 
    } 

    public double getItemSellPrice() { 
     return ItemSellPrice; 
    } 

    public void setItemSellPrice(double ItemSellPrice) { 
     this.ItemSellPrice = ItemSellPrice; 
    } 

    public boolean isItemSold() { 
     return ItemSold; 
    } 

    public void setItemSold(boolean ItemSold) { 
     this.ItemSold = ItemSold; 
    } 

} 

然后,您可以extend项目创建一个类像“苹果”和“梨”每个项目并设置该类的值。

Map<String,List<Item>> itemsSold = new HashMap<>();里面你可以使用Array.size(),看看你有多少个“苹果”有,然后添加/得/你看到每个销售合适删除它们,等

Java是一种面向对象的编程语言。为项目创建一个漂亮的对象可以帮助简化代码并提高OOP技能。

使用这样的方法,您可以根据需要扩展并为每个项目添加其他代码,然后您可以使用各种方法来跟踪项目,包括其销售额。

希望这会有所帮助!

+0

它的确帮助了你。 – user3732562

0

可以使用2​​一个项目和另一个用于每个输入出售添加new Pair(yourItemNAme,price)到ArrayList 然后为每个售出项目检查,如果价格大于或等于该项目price然后将其删除items list并将其name与新的price加到sold list

相关问题