我想有一个用户输入一个String
搜索列表中的一个值。 这工作得很好,但我也希望String
有一个数值。 这样我可以在列表中的价格一定的项目。 我试过了:
public List<String, double>
然而,这总是给我一个错误。 我怎么能存储字符串及其对应的数值?
我想有一个用户输入一个String
搜索列表中的一个值。 这工作得很好,但我也希望String
有一个数值。 这样我可以在列表中的价格一定的项目。 我试过了:
public List<String, double>
然而,这总是给我一个错误。 我怎么能存储字符串及其对应的数值?
你们只存储一个String
和一个Double
,或将你最终需要存储关于每个对象的更多信息?
例如,你在谈论存储的名称和价格。 如果这是一个购物类节目,你很可能是最好存储在一个新的类每个产品的所有信息,然后将类存储在HashMap
。 例如..
// Class for your product and all related information...
public class Product {
String name;
double price;
String color;
double weight;
public Product(String name, double price, String color, double weight){
this.name = name;
this.price = price;
this.color = color;
this.weight = weight;
}
}
// Now add each Product to a HashMap (in your main class)...
HashMap<String,Product> products = new HashMap<String,Product>();
products.put("Cheese", new Product("Cheese",1.10,"Yellow",0.5);
products.put("Milk", new Product("Milk",2.0,"White",1.5);
然后,您就可以查询HashMap
的"Cheese"
,你会得到的Product
,并和它所有的信息...
Product cheese = products.get("Cheese");
double price = cheese.getPrice();
使用地图。
Map<String, Double> someMap = new HashMap<String, Double>();
然后,你可以使用Map#put(K, V)
和Map#get(K)
把和获取值。
退房的地图文件也是如此。
从Java 7起,您可以省略构造函数的声明中的泛型类型:
Map<String, Double> someMap = new HashMap<>();