Освой Java играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Для параллельных вычислений используется пакет java.util.concurrent.
Класс ThreadLocalRandom аналогичен классам java.util.Random или Math.random() для генерации случайных значений, но более надёжен.
public void onClick(View view) {
ThreadLocalRandom random = ThreadLocalRandom.current();
Log.i(TAG, "Random boolean: " + random.nextBoolean());
Log.i(TAG, "Random int: " + random.nextInt());
Log.i(TAG, "Random between 0 and 10: " + random.nextInt(10));
Log.i(TAG, "Random between 10 and 20: " + random.nextInt(10, 20));
Log.i(TAG, "Random float: " + random.nextFloat());
Log.i(TAG, "Random long: " + random.nextLong());
Log.i(TAG, "Random long between 0 and 10: " + random.nextLong(10));
Log.i(TAG, "Random long between 10 and 20: " + random.nextLong(10, 20));
}
В Android 11 (R) обещают добавить класс Flow, которые является частью Java 8.