S Gregg wrote:i know i can calculate 10% of 70 = 7 and insert 7 integers, then calculate 24% of 70 = 17 and insert 17 RationalNumbers, etc but this wouldn't be random
Because you're dealing with whole percentage points you can think of a dice with 100 sides numbered from 0 thru 99.
You divide the numbers into groups. The size of each group will determine the probability of that group being selected. For example a group with the numbers 0 thru 9 has a probability 10%. A group with numbers 10 thru 33 will have a probability of 24%. A group with numbers 34 through 53 will have a probability of 20%. Etcetera.
So although each number on the dice has an equal probability of showing up, the group it belongs to has a probability of being selected which is proportional to its size. In principle it doesn't matter which numbers belongs to which group but using intervals is convenient programatically.
There's a method called nextInt of class Random you can use to simulate the dice.