【发布时间】:2019-04-28 09:48:56
【问题描述】:
我有一个返回数字的方法:
public String getNum()
{
Random random = new Random();
return random.nextInt(1000) + "";
}
我有这个存储对象的方法
public void store(User user)
{
String str = getNum();
user.setIdCode(str);
for (User users: userList)
{
if(users.getId() == user.getId())
{
user.setIdCode(getNum);
}
}
}
如果 Id 兴奋,则重新设置 id。这肯定会检查 id 第一次是否存在,但第二次设置 id 怎么样。有可能重复相同的数字。同时我们不能进入无限循环。
【问题讨论】:
-
@stdunbar 我认为 OP 并不是在问为什么会出错,他更关心的是如果将重复的 id 提供给另一个用户会怎样。
-
嘿@MajdaElferjani 确实通过单击答案旁边的 V 型刻度标记查找按钮将答案标记为正确,这有助于未来读者对 SO 的问题,我也很感激。干杯! :)