gpt4 book ai didi

java - 如何为实例设置唯一ID

转载 作者:行者123 更新时间:2023-12-02 12:54:43 25 4
gpt4 key购买 nike

我正在尝试创建具有唯一标识符 (ID) 的类产品实例。

该 ID 的作用类似于商店中产品上的条形码,用户可以在添加产品后更改该 ID。

这是我到目前为止所拥有的:

public class Product {

private int id;
//and some other attributes...

public Product (int id){
this.id = id;
}


public void setId(){
this.Id = id;
}

//more not relevant methods...
}

我正在考虑创建一个类,其中包含所有创建的产品,如下所示:

public class Inventory{

ArrayList<Product> products;
//not sure if I should use product array or ID's array

public Producto createProduct(int id){
if (products.contains(/* product with id*/)){
// not sure what to use here
}
else{
return new Producto(id);
}
}

}

所以我不确定如何让它工作,或者类 Inventory 是否是一个好主意。

最佳答案

您可以修改Inventory类来保存如下数据结构

HashMap<Integer, Product> products;

在构造函数中初始化,然后就可以调用 products.contains(<int id>) 。您需要相应地将新产品添加到此数据结构中。

正确有效地使用HashMap ,您还需要阅读有关覆盖 equals() 的内容和hashcode()方法。 HashMap为您提供 O(1) 插入和 O(1) 查找。

关于java - 如何为实例设置唯一ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44479324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com