На данный вопрос уже ответили:
Здравствуйте. У меня есть
ArrayList myArray = new ArrayList();
Random r = new Random();
for (int i = 0; i < 10; i++){
myArray.add(r.nextInt(10) + 1);
}
Но он заполняет ArrayList
любыми числами, а мне надо, чтобы он делал каждое число уникальным (без повторений), и в случайном порядке их раскидывал. Спасибо за помощь!
Чтобы сделать проще то, что вы хотите, познакомьтесь с этим: Множества: Set, HashSet, LinkedHashSet, TreeSet.
На вашем примере:
Random random = new Random();
Set<Integer> numberSet = new HashSet<>();
for (int i = 0; i < 10; i++) {
numberSet.add(random.nextInt(10) + 1);
}
Повторяющихся элементов не будет.
Тогда нужно random permutation, Случайные перестановки
Если по простому, то берем первый элемент и меняем местами с любым другим, потом берем второй и меняем местами с любым кроме первого и так до конца
Само собой сначала нужно заполнить массив значениями, например
myArray.add(i)
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Я только разбираюсь со спрингом, поэтому не совсем понимаю как работаетИтак я сделал все как в туториале firstapp и все работает
Доброго времени сутокПрошу объяснить, что я сделал не так и как это исправить
Необходимо создать приложение, окно которого двигалось бы по экрану
как из BufferedImage - перевести картинку в пиксели?