반응형
난수를 생성하는데 사용하는 Random 클래스
에는 아래 인스턴스 메소드들이 포함되어 있다.
이 메소드들은 해당 타입의 난수들로 이루어진 스트림을 반환한다.
IntStream ints()
LongStream longs()
DoubleStream doubles()
이 메소드들이 반환하는 스트림은 크기가 정해지지 않은 무한 스트림
이므로
limit()
도 같이 사용해서 스트림의 크기를 제한해주어야 한다.
limit()
은 스트림의 개수를 지정하는데 사용되고 무한 스트림을 유한 스트림으로 만들어준다.
IntStream intStream = new Random().ints(); //무한 스트림
intStream.limit(5).forEach(System.out::println); //5개의 요소만 출력
매개변수로 스트림의 크기를 지정해서 유한 스트림
을 생성할 수도 있다.
IntStream ints(long streamSize)
LongStream longs(long streamSize)
DoubleStream doubles(long streamSize)
//예시
IntStream intStream = new Random().ints(5); //크기가 5인 난수 스트림 반환
위 메소드들로 생성된 스트림의 난수의 범위는 아래와 같다.
Integer.MIN_VALUE <= ints() <= Integer.MAX_VALUE
Long.MIN_VALUE <= longs() <= Long.MAX_VALUE
0.0 <= doubles() <= 1.0
난수의 범위를 지정해서 스트림을 만들 수도 있다.
// end 는 범위에 포함 X
IntStream ints(int begin, int end)
LongStream longs(long begin, long end)
DoubleStream doubles(double begin, double end)
IntStream ints(long streamSize, int begin, int end)
LongStream longs(long streamSize, long begin, long end)
DoubleStream doubles(long streamSize, double begin, double end)
728x90
반응형