我有以下代码生成5位随机数并将其添加到ArrayList中。但是,这些数字必须是唯一的ID。

for(int i = 0; i < myArr.length; i++) {
    int id = (int) (Math.round(Math.random() * 89999) + 10000);
    idArr.add(id);
}


我正在尝试找出如何在添加数字之前检查该数字是否已经在数组中,但是我无法全力以赴地做到这一点。

最佳答案

使用ArrayList代替array。这样,您只需要使用ArrayList#contains(obj)方法来测试id是否已在ArrayList中。

或者,您可以只使用HashSet,通过HashSet#contains()方法可以更快地工作。

10-06 16:14
查看更多