Java에서 지정된 범위 내에서 난수 생성

Mohammad Irfan 2023년10월12일
  1. Java에서ThreadLocalRandom클래스를 사용하여 난수 생성
  2. Java에서Math클래스를 사용하여 난수 생성
  3. Java에서Random클래스를 사용하여 난수 생성
  4. Java에서Random클래스를 사용하여 난수 생성
  5. Java에서Random클래스 및IntStream을 사용하여 난수 생성
  6. Java에서nextFloat메소드를 사용하여 난수 생성
  7. Java에서RandomData클래스를 사용하여 난수 생성
  8. Java에서SecureRandom클래스를 사용하여 난수 생성
  9. Java에서RandomUtils클래스를 사용하여 난수 생성
Java에서 지정된 범위 내에서 난수 생성

이 튜토리얼에서는 Java에서 지정된 범위 내에서 난수를 생성하는 방법을 소개합니다.

ThreadLocalRandom클래스의nextInt()메소드,Math클래스의random()메소드, Java의nextInt()메소드와 같이 Java에서 난수를 생성하는 여러 가지 방법이 있습니다. Random클래스,Random클래스의ints()메소드,Random클래스 및RandomUtil클래스의nextFloat()메소드 등.

Java에서ThreadLocalRandom클래스를 사용하여 난수 생성

Java 동시 패키지는nextInt()메소드가있는ThreadLocalRandom클래스를 제공합니다. 이 메서드는 지정된 범위 내에서 임의의 정수를 생성 할 수 있습니다. 아래 예를 참조하십시오.

import java.util.concurrent.ThreadLocalRandom;

public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    ThreadLocalRandom tlr = ThreadLocalRandom.current();
    int randomNum = tlr.nextInt(min_val, max_val + 1);
    System.out.println("Random Number: " + randomNum);
  }
}

출력:

Value in double: 12.9
Value in int: 12

Java에서Math클래스를 사용하여 난수 생성

Java Math클래스를 사용하여 지정된 범위 내에서 난수를 생성 할 수 있습니다. 여기서는Math클래스의random()메서드를 사용하여 난수를 얻습니다. 아래 예를 참조하십시오.

public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    double randomNum = Math.random() * (max_val - min_val);
    System.out.println("Random Number: " + randomNum);
  }
}

출력:

Id: 1212
Name: Samre

Java에서Random클래스를 사용하여 난수 생성

Java의Random클래스는 정수 값을 리턴하는nextInt()메소드를 사용하여 지정된 범위 내에서 임의의 정수를 생성 할 수 있습니다. 아래 예를 참조하십시오.

import java.util.Random;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    Random ran = new Random();
    int x = ran.nextInt(max_val) + min_val;
    System.out.println("Random Number: " + x);
  }
}

출력:

Id: 1212
Name: Samre

Java에서Random클래스를 사용하여 난수 생성

이것은 지정된 범위 내에서 임의의 정수를 얻기위한 또 다른 솔루션입니다. 여기서는 다른 매개 변수를 가진Random클래스의nextInt()메소드를 사용합니다. 아래 예를 참조하십시오.

import java.util.Random;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    Random rand = new Random();
    int randomNum = min_val + rand.nextInt((max_val - min_val) + 1);
    System.out.println("Random Number: " + randomNum);
  }
}

출력:

Random Number: 75

Java에서Random클래스 및IntStream을 사용하여 난수 생성

여기서는 난수 스트림을 반환하는Random클래스의ints()메서드를 사용합니다. forEach()메소드를 사용하여ints()메소드에 의해 생성 된 모든 임의의 정수를 인쇄합니다. 아래 예를 참조하십시오.

import java.util.Random;
import java.util.stream.IntStream;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    Random rand = new Random();
    IntStream stream = rand.ints(5, min_val, max_val);
    stream.forEach(System.out::println);
  }
}

출력:

94
35
90
74
47

Java에서nextFloat메소드를 사용하여 난수 생성

Random클래스는 플로트 유형 난수를 생성하는nextFloat()메소드를 제공합니다. 실수 형 난수를 얻으려면이 방법이 유용합니다. 아래 예를 참조하십시오.

import java.util.Random;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    Random rand = new Random();
    float rand_val = rand.nextFloat() * (max_val - min_val);
    System.out.println(rand_val);
  }
}

출력:

71.88764

Java에서RandomData클래스를 사용하여 난수 생성

아파치 공용 라이브러리로 작업하는 경우RandomData클래스를 사용하십시오. 이 클래스는 정수 값을 반환하는nextInt()메소드를 제공합니다. 이 방법을 사용하여 지정된 범위 내에서 임의의 정수를 생성 할 수 있습니다. 아래 예를 참조하십시오.

import org.apache.commons.math.random.RandomData;
import org.apache.commons.math.random.RandomDataImpl;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    RandomData randomData randomData = new RandomDataImpl();
    int number = randomData.nextInt(min_val, max_val);
    System.out.println(number);
  }
}

출력:

72

Java에서SecureRandom클래스를 사용하여 난수 생성

SecureRandom 클래스는 보안 난수를 생성하는 데 사용되는 Java의security패키지에 속합니다. 여기서는Date클래스를 사용하여 시드를 생성 한 다음nextInt()메서드를 사용하여 임의의 정수를 생성합니다. 아래 예를 참조하십시오.

import java.security.SecureRandom;
import java.util.Date;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    SecureRandom rand = new SecureRandom();
    rand.setSeed(new Date().getTime());
    int randomNum = rand.nextInt((max_val - min_val) + 1) + min_val;
    System.out.println(randomNum);
  }
}

출력:

65

Java에서RandomUtils클래스를 사용하여 난수 생성

아파치 공용 라이브러리의RandomUtil클래스를 사용하여 임의의 정수를 생성 할 수 있습니다. 이 클래스의nextInt()메소드는 정수 클래스를 리턴합니다. 아래 예를 참조하십시오.

import org.apache.commons.lang3.RandomUtils;
public class SimpleTesting {
  public static void main(String[] args) {
    int min_val = 10;
    int max_val = 100;
    RandomUtils random = new RandomUtils();
    int randomNum = random.nextInt(min_val, max_val);
    System.out.println(randomNum);
  }
}

출력:

66

관련 문장 - Java Math

관련 문장 - Java Number