2.定义一个商品类,包含商品编号和商品名称属性,类中要有一个构造方法,该构造方 法包含两个参数,重写toString0创建一个Map集合,集合中添加3个键值对,键是商品 编号,值是商品对象,迭代遍历集合键值对输出到控制台。
时间: 2024-12-25 15:36:39 浏览: 7
在Java中,我们可以定义一个名为`Product`的商品类,包含商品编号(商品ID)和商品名称属性,并提供一个构造方法以及重写`toString()`方法来创建一个`HashMap`。以下是示例代码:
```java
import java.util.HashMap;
// 商品类 Product
public class Product {
private String productId;
private String productName;
// 构造方法
public Product(String productId, String productName) {
this.productId = productId;
this.productName = productName;
}
// 获取和设置方法
// 省略 getter 和 setter 方法...
// 重写 toString 方法以创建一个 Map 集合
@Override
public String toString() {
HashMap<String, Product> productMap = new HashMap<>();
productMap.put(productId, this);
// 创建3个键值对
productMap.put("商品1", getProduct("商品1的详细描述"));
productMap.put("商品2", getProduct("商品2的详细描述"));
productMap.put("商品3", getProduct("商品3的详细描述"));
return productMap.toString();
}
// 使用商品ID生成一个模拟的产品实例,这里仅用于演示
private Product getProduct(String description) {
// 实际情况中需要从数据库或配置文件获取产品详情
// 这里假设description即为产品名
return new Product(description, description);
}
}
// 测试主类 Main
public class Main {
public static void main(String[] args) {
Product product = new Product("P001", "商品A");
System.out.println(product); // 输出整个Map集合
}
}
```
在这个例子中,`toString()`方法会创建一个`HashMap`,其中键是商品编号,值是对应的`Product`对象。注意,实际应用中你需要根据实际情况填充`getProduct()`方法,这里只是简单地返回了新的`Product`实例作为演示。
阅读全文