初学者求教
阅读
如何做下面的代码!!!刚开始学,有点晕了,跪求帮忙
~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~
------解决方案--------------------
- Java code
package items; import gui.List; import java.util.*; public class TestSearch { public static ArrayList<Item> items = new ArrayList<Item>(); public static void main(String[] args) { init(); for(int i = 0;i<items.size();i++){ Item item = items.get(i); System.out.println(item); } System.out.println("----------------------------------------"); Scanner scanner = new Scanner(System.in); while(true){ if(scanner.hasNextLine()){ String tempString = scanner.nextLine(); Item item = getItem(tempString); if(item!=null)System.out.println(item); else System.out.println("not exisit "); } } } public static void init() {//为了测试效果 我将初始化一些数据 items.add(Item.createItem(100000, "BHP", 35.00)); items.add(Item.createItem(50000, "CTX", 12.50)); items.add(Item.createItem(80000, "LYC", 1.91)); items.add(Item.createItem(200000, "RIO", 76.50)); items.add(Item.createItem(300000, "VBA", 0.34)); items.add(Item.createItem(200000, "VAB", 1.34)); items.add(Item.createItem(100000, "VBB", 2.34)); } public static Item getItem(String tempString){//如果code相等 则返回相应的item for(int i = 0;i<items.size();i++){ Item item = items.get(i); if(item.getCode().equals(tempString)) return item; } return null; } } class Item { private int number; private String code; private double initialPrice; public Item(int number, String code, double initialPrice) { super(); this.code = code; this.number = number; this.initialPrice = initialPrice; } public static Item createItem(int number, String code, double initialPrice) { return new Item(number, code, initialPrice); } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public double getInitialPrice() { return initialPrice; } public void setInitialPrice(double initialPrice) { this.initialPrice = initialPrice; } public String toString(){//可以利用这个函数来控制输出格式 String tempInitialPrice = String.format("%.2f", initialPrice);//为了保证保留两位小数 return number+" " + code + ": $" + tempInitialPrice; } } /*output: 100000 BHP: $35.00 50000 CTX: $12.50 80000 LYC: $1.91 200000 RIO: $76.50 300000 VBA: $0.34 200000 VAB: $1.34 100000 VBB: $2.34 ---------------------------------------- ABC not exisit VBA 300000 VBA: $0.34 */阅读