코드 링크 : https://github.com/KimGenius/MentoringWhatIsRandom
자바를 기준으로 랜덤을 설명하자면
자바의 랜덤은 매우 심플하고 간단하고 쉽게 되어있습니다
기본적으로 Random클래스를 제공해서 쉽게 사용이 가능하죠
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import java.util.Random; public class RanRanRandom { public static void main(String[] args) { Random random = new Random(); System.out.println(random.nextInt()); System.out.println(random.nextBoolean()); System.out.println(random.nextDouble()); System.out.println(random.nextFloat()); System.out.println(random.nextLong()); /* -1722874644 false 0.8459281808889022 0.20337558 -2619405380161169206 */ System.out.println(random.nextInt(10)); //0~9 System.out.println(random.nextInt(10) + 1); //1~10 System.out.println(random.nextInt(10) + 5); //5~14 System.out.println(random.nextInt(7) + 2); //2~8 } } | cs |
이 코드를 보면 간단하게 랜덤을 사용한 것을 볼 수 있습니다
Random 클래스는 java.util 내부에 있고 import하여 사용이 가능합니다
먼저 Random클래스의 객체를 선언합니다. (5번째 줄)
그리고 가장 심플하게 할 수 있는 next~~ 함수가 있죠
정말 간단합니다
random.nextInt 는 말 그대로 int 형태로 랜덤 슝슝 뽑아줍니다
random.nextBoolean 은 true false 중 하나를 뽑아주죠
이런식으로 next형태로 사용할 수 있습니다.
자 그러면 원하는 형태는 된거같고 원하는 범위는 어떻게 할까요?
간단하게 Int로 설명해볼게요(18번째 줄부터)
먼저 매개변수를 하나 주면 0~n-1 값으로 측정됩니다.
즉 0부터 몇개를 범위로 할것이냐 라는거죠
18번째 줄에서 10으로 했으니 0~10-1 즉 0~9가 범위가 됩니다.
1부터 시작하고 싶으면 어떻게하냐? 그냥 +1 해주면 됩니다
그럼 자동으로 범위가 0~n에서 +1씩 하면 0+1~n+1 즉 1~n+1이 되죠
그럼 원하는 범위 즉 n~n`까지는 어떻게 할까요?
이때 아주 쉬운 공식이 있습니다
nextInt(n`-n+1) + n
이 공식이 뭐냐면
n은 시작할 숫자
n`은 끝 숫자입니다.
예를 들어서 5~10까지 하고싶다면
nextInt(10-5+1) + 5 이죠
정말 간단합니다
그럼 끝
'Mentoring' 카테고리의 다른 글
7월 12일 수요일 17년도 1학기 기말대비 마지막 스터디 (0) | 2017.07.14 |
---|---|
두번째 멘토링 진행(C 기말고사 대비) (0) | 2017.07.09 |
첫 멘토링 진행! (0) | 2017.07.08 |
학교 멘토링 제도를 만들었다 (0) | 2017.07.08 |