<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FDevelopment%2FRandom</id>
		<title>Java Tutorial/Development/Random - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FDevelopment%2FRandom"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Development/Random&amp;action=history"/>
		<updated>2026-04-22T01:25:41Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Development/Random&amp;diff=3676&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Development/Random&amp;diff=3676&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Development/Random&amp;diff=3677&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Development/Random&amp;diff=3677&amp;oldid=prev"/>
				<updated>2010-05-31T15:28:49Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Create two random number generators with the same seed ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    long seed = rand.nextLong();&lt;br /&gt;
    rand = new Random(seed);&lt;br /&gt;
    Random rand2 = new Random(seed);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Generate a random array of numbers ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Random r = new Random();&lt;br /&gt;
    // generate some random boolean values&lt;br /&gt;
    boolean[] booleans = new boolean[10];&lt;br /&gt;
    for (int i = 0; i &amp;lt; booleans.length; i++) {&lt;br /&gt;
      booleans[i] = r.nextBoolean();&lt;br /&gt;
    }&lt;br /&gt;
    for (boolean b : booleans) {&lt;br /&gt;
      System.out.print(b + &amp;quot;, &amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    // generate a uniformly distributed int random numbers&lt;br /&gt;
    int[] integers = new int[10];&lt;br /&gt;
    for (int i = 0; i &amp;lt; integers.length; i++) {&lt;br /&gt;
      integers[i] = r.nextInt();&lt;br /&gt;
    }&lt;br /&gt;
    for (int i : integers) {&lt;br /&gt;
      System.out.print(i + &amp;quot;, &amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    // generate a uniformly distributed float random numbers&lt;br /&gt;
    float[] floats = new float[10];&lt;br /&gt;
    for (int i = 0; i &amp;lt; floats.length; i++) {&lt;br /&gt;
      floats[i] = r.nextFloat();&lt;br /&gt;
    }&lt;br /&gt;
    for (float f : floats) {&lt;br /&gt;
      System.out.print(f + &amp;quot;, &amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    // generate a Gaussian normally distributed random numbers&lt;br /&gt;
    double[] gaussians = new double[10];&lt;br /&gt;
    for (int i = 0; i &amp;lt; gaussians.length; i++) {&lt;br /&gt;
      gaussians[i] = r.nextGaussian();&lt;br /&gt;
    }&lt;br /&gt;
    for (double d : gaussians) {&lt;br /&gt;
      System.out.print(d + &amp;quot;, &amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Generating Random integer Numbers ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Random diceValues = new Random();&lt;br /&gt;
    System.out.println(diceValues.nextInt(6));&lt;br /&gt;
    System.out.println(diceValues.nextInt(6));&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;5&lt;br /&gt;
3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Operations for random Strings ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * Licensed to the Apache Software Foundation (ASF) under one or more&lt;br /&gt;
 * contributor license agreements.  See the NOTICE file distributed with&lt;br /&gt;
 * this work for additional information regarding copyright ownership.&lt;br /&gt;
 * The ASF licenses this file to You under the Apache License, Version 2.0&lt;br /&gt;
 * (the &amp;quot;License&amp;quot;); you may not use this file except in compliance with&lt;br /&gt;
 * the License.  You may obtain a copy of the License at&lt;br /&gt;
 * &lt;br /&gt;
 *      http://www.apache.org/licenses/LICENSE-2.0&lt;br /&gt;
 * &lt;br /&gt;
 * Unless required by applicable law or agreed to in writing, software&lt;br /&gt;
 * distributed under the License is distributed on an &amp;quot;AS IS&amp;quot; BASIS,&lt;br /&gt;
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&lt;br /&gt;
 * See the License for the specific language governing permissions and&lt;br /&gt;
 * limitations under the License.&lt;br /&gt;
 */&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
/**&lt;br /&gt;
 * Operations for random &amp;lt;code&amp;gt;String&amp;lt;/code&amp;gt;s.&lt;br /&gt;
 * Currently &amp;lt;em&amp;gt;private high surrogate&amp;lt;/em&amp;gt; characters are ignored. &lt;br /&gt;
 * These are unicode characters that fall between the values 56192 (db80)&lt;br /&gt;
 * and 56319 (dbff) as we don&amp;quot;t know how to handle them. &lt;br /&gt;
 * High and low surrogates are correctly dealt with - that is if a &lt;br /&gt;
 * high surrogate is randomly chosen, 55296 (d800) to 56191 (db7f) &lt;br /&gt;
 * then it is followed by a low surrogate. If a low surrogate is chosen, &lt;br /&gt;
 * 56320 (dc00) to 57343 (dfff) then it is placed after a randomly &lt;br /&gt;
 * chosen high surrogate. &lt;br /&gt;
 *&lt;br /&gt;
 * @author &lt;br /&gt;
 * @author Stephen Colebourne&lt;br /&gt;
 * @author Gary Gregory&lt;br /&gt;
 * @author Phil Steitz&lt;br /&gt;
 * @since 1.0&lt;br /&gt;
 * @version $Id: RandomStringUtils.java 471626 2006-11-06 04:02:09Z bayard $&lt;br /&gt;
 */&lt;br /&gt;
public class RandomStringUtils {&lt;br /&gt;
    /**&lt;br /&gt;
     * Random object used by random method. This has to be not local&lt;br /&gt;
     * to the random method so as to not return the same value in the &lt;br /&gt;
     * same millisecond.&lt;br /&gt;
     */&lt;br /&gt;
    private static final Random RANDOM = new Random();&lt;br /&gt;
    /**&lt;br /&gt;
     * &amp;lt;code&amp;gt;RandomStringUtils&amp;lt;/code&amp;gt; instances should NOT be constructed in&lt;br /&gt;
     * standard programming. Instead, the class should be used as&lt;br /&gt;
     * &amp;lt;code&amp;gt;RandomStringUtils.random(5);&amp;lt;/code&amp;gt;.&lt;br /&gt;
     *&lt;br /&gt;
     * This constructor is public to permit tools that require a JavaBean instance&lt;br /&gt;
     * to operate.&lt;br /&gt;
     */&lt;br /&gt;
    public RandomStringUtils() {&lt;br /&gt;
      super();&lt;br /&gt;
    }&lt;br /&gt;
    // Random&lt;br /&gt;
    //-----------------------------------------------------------------------&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of all characters.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count) {&lt;br /&gt;
        return random(count, false, false);&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of characters whose&lt;br /&gt;
     * ASCII value is between &amp;lt;code&amp;gt;32&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;126&amp;lt;/code&amp;gt; (inclusive).&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String randomAscii(int count) {&lt;br /&gt;
        return random(count, 32, 127, false, false);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of alphabetic&lt;br /&gt;
     * characters.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String randomAlphabetic(int count) {&lt;br /&gt;
        return random(count, true, false);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of alpha-numeric&lt;br /&gt;
     * characters.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String randomAlphanumeric(int count) {&lt;br /&gt;
        return random(count, true, true);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of numeric&lt;br /&gt;
     * characters.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String randomNumeric(int count) {&lt;br /&gt;
        return random(count, false, true);&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of alpha-numeric&lt;br /&gt;
     * characters as indicated by the arguments.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param letters  if &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, generated string will include&lt;br /&gt;
     *  alphabetic characters&lt;br /&gt;
     * @param numbers  if &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, generated string will include&lt;br /&gt;
     *  numeric characters&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, boolean letters, boolean numbers) {&lt;br /&gt;
        return random(count, 0, 0, letters, numbers);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of alpha-numeric&lt;br /&gt;
     * characters as indicated by the arguments.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param start  the position in set of chars to start at&lt;br /&gt;
     * @param end  the position in set of chars to end before&lt;br /&gt;
     * @param letters  if &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, generated string will include&lt;br /&gt;
     *  alphabetic characters&lt;br /&gt;
     * @param numbers  if &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, generated string will include&lt;br /&gt;
     *  numeric characters&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, int start, int end, boolean letters, boolean numbers) {&lt;br /&gt;
        return random(count, start, end, letters, numbers, null, RANDOM);&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string based on a variety of options, using&lt;br /&gt;
     * default source of randomness.&lt;br /&gt;
     *&lt;br /&gt;
     * This method has exactly the same semantics as&lt;br /&gt;
     * {@link #random(int,int,int,boolean,boolean,char[],Random)}, but&lt;br /&gt;
     * instead of using an externally supplied source of randomness, it uses&lt;br /&gt;
     * the internal static {@link Random} instance.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param start  the position in set of chars to start at&lt;br /&gt;
     * @param end  the position in set of chars to end before&lt;br /&gt;
     * @param letters  only allow letters?&lt;br /&gt;
     * @param numbers  only allow numbers?&lt;br /&gt;
     * @param chars  the set of chars to choose randoms from.&lt;br /&gt;
     *  If &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;, then it will use the set of all chars.&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     * @throws ArrayIndexOutOfBoundsException if there are not&lt;br /&gt;
     *  &amp;lt;code&amp;gt;(end - start) + 1&amp;lt;/code&amp;gt; characters in the set array.&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, int start, int end, boolean letters, boolean numbers, char[] chars) {&lt;br /&gt;
        return random(count, start, end, letters, numbers, chars, RANDOM);&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string based on a variety of options, using&lt;br /&gt;
     * supplied source of randomness.&lt;br /&gt;
     *&lt;br /&gt;
     * If start and end are both &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;, start and end are set&lt;br /&gt;
     * to &amp;lt;code&amp;gt;&amp;quot; &amp;quot;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;quot;z&amp;quot;&amp;lt;/code&amp;gt;, the ASCII printable&lt;br /&gt;
     * characters, will be used, unless letters and numbers are both&lt;br /&gt;
     * &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;, in which case, start and end are set to&lt;br /&gt;
     * &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Integer.MAX_VALUE&amp;lt;/code&amp;gt;.&lt;br /&gt;
     *&lt;br /&gt;
     * If set is not &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;, characters between start and&lt;br /&gt;
     * end are chosen.&lt;br /&gt;
     *&lt;br /&gt;
     * This method accepts a user-supplied {@link Random}&lt;br /&gt;
     * instance to use as a source of randomness. By seeding a single &lt;br /&gt;
     * {@link Random} instance with a fixed seed and using it for each call,&lt;br /&gt;
     * the same random sequence of strings can be generated repeatedly&lt;br /&gt;
     * and predictably.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param start  the position in set of chars to start at&lt;br /&gt;
     * @param end  the position in set of chars to end before&lt;br /&gt;
     * @param letters  only allow letters?&lt;br /&gt;
     * @param numbers  only allow numbers?&lt;br /&gt;
     * @param chars  the set of chars to choose randoms from.&lt;br /&gt;
     *  If &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;, then it will use the set of all chars.&lt;br /&gt;
     * @param random  a source of randomness.&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     * @throws ArrayIndexOutOfBoundsException if there are not&lt;br /&gt;
     *  &amp;lt;code&amp;gt;(end - start) + 1&amp;lt;/code&amp;gt; characters in the set array.&lt;br /&gt;
     * @throws IllegalArgumentException if &amp;lt;code&amp;gt;count&amp;lt;/code&amp;gt; &amp;amp;lt; 0.&lt;br /&gt;
     * @since 2.0&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, int start, int end, boolean letters, boolean numbers,&lt;br /&gt;
                                char[] chars, Random random) {&lt;br /&gt;
        if (count == 0) {&lt;br /&gt;
            return &amp;quot;&amp;quot;;&lt;br /&gt;
        } else if (count &amp;lt; 0) {&lt;br /&gt;
            throw new IllegalArgumentException(&amp;quot;Requested random string length &amp;quot; + count + &amp;quot; is less than 0.&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        if ((start == 0) &amp;amp;&amp;amp; (end == 0)) {&lt;br /&gt;
            end = &amp;quot;z&amp;quot; + 1;&lt;br /&gt;
            start = &amp;quot; &amp;quot;;&lt;br /&gt;
            if (!letters &amp;amp;&amp;amp; !numbers) {&lt;br /&gt;
                start = 0;&lt;br /&gt;
                end = Integer.MAX_VALUE;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        char[] buffer = new char[count];&lt;br /&gt;
        int gap = end - start;&lt;br /&gt;
        while (count-- != 0) {&lt;br /&gt;
            char ch;&lt;br /&gt;
            if (chars == null) {&lt;br /&gt;
                ch = (char) (random.nextInt(gap) + start);&lt;br /&gt;
            } else {&lt;br /&gt;
                ch = chars[random.nextInt(gap) + start];&lt;br /&gt;
            }&lt;br /&gt;
            if ((letters &amp;amp;&amp;amp; Character.isLetter(ch))&lt;br /&gt;
                || (numbers &amp;amp;&amp;amp; Character.isDigit(ch))&lt;br /&gt;
                || (!letters &amp;amp;&amp;amp; !numbers)) &lt;br /&gt;
            {&lt;br /&gt;
                if(ch &amp;gt;= 56320 &amp;amp;&amp;amp; ch &amp;lt;= 57343) {&lt;br /&gt;
                    if(count == 0) {&lt;br /&gt;
                        count++;&lt;br /&gt;
                    } else {&lt;br /&gt;
                        // low surrogate, insert high surrogate after putting it in&lt;br /&gt;
                        buffer[count] = ch;&lt;br /&gt;
                        count--;&lt;br /&gt;
                        buffer[count] = (char) (55296 + random.nextInt(128));&lt;br /&gt;
                    }&lt;br /&gt;
                } else if(ch &amp;gt;= 55296 &amp;amp;&amp;amp; ch &amp;lt;= 56191) {&lt;br /&gt;
                    if(count == 0) {&lt;br /&gt;
                        count++;&lt;br /&gt;
                    } else {&lt;br /&gt;
                        // high surrogate, insert low surrogate before putting it in&lt;br /&gt;
                        buffer[count] = (char) (56320 + random.nextInt(128));&lt;br /&gt;
                        count--;&lt;br /&gt;
                        buffer[count] = ch;&lt;br /&gt;
                    }&lt;br /&gt;
                } else if(ch &amp;gt;= 56192 &amp;amp;&amp;amp; ch &amp;lt;= 56319) {&lt;br /&gt;
                    // private high surrogate, no effing clue, so skip it&lt;br /&gt;
                    count++;&lt;br /&gt;
                } else {&lt;br /&gt;
                    buffer[count] = ch;&lt;br /&gt;
                }&lt;br /&gt;
            } else {&lt;br /&gt;
                count++;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return new String(buffer);&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param chars  the String containing the set of characters to use,&lt;br /&gt;
     *  may be null&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     * @throws IllegalArgumentException if &amp;lt;code&amp;gt;count&amp;lt;/code&amp;gt; &amp;amp;lt; 0.&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, String chars) {&lt;br /&gt;
        if (chars == null) {&lt;br /&gt;
            return random(count, 0, 0, false, false, null, RANDOM);&lt;br /&gt;
        }&lt;br /&gt;
        return random(count, chars.toCharArray());&lt;br /&gt;
    }&lt;br /&gt;
    /**&lt;br /&gt;
     * Creates a random string whose length is the number of characters&lt;br /&gt;
     * specified.&lt;br /&gt;
     *&lt;br /&gt;
     * Characters will be chosen from the set of characters specified.&lt;br /&gt;
     *&lt;br /&gt;
     * @param count  the length of random string to create&lt;br /&gt;
     * @param chars  the character array containing the set of characters to use,&lt;br /&gt;
     *  may be null&lt;br /&gt;
     * @return the random string&lt;br /&gt;
     * @throws IllegalArgumentException if &amp;lt;code&amp;gt;count&amp;lt;/code&amp;gt; &amp;amp;lt; 0.&lt;br /&gt;
     */&lt;br /&gt;
    public static String random(int count, char[] chars) {&lt;br /&gt;
        if (chars == null) {&lt;br /&gt;
            return random(count, 0, 0, false, false, null, RANDOM);&lt;br /&gt;
        }&lt;br /&gt;
        return random(count, 0, chars.length, false, false, chars, RANDOM);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random boolean ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    boolean b = rand.nextBoolean();&lt;br /&gt;
    long l = rand.nextLong();&lt;br /&gt;
    float f = rand.nextFloat(); // 0.0 &amp;lt;= f &amp;lt; 1.0&lt;br /&gt;
    double d = rand.nextDouble(); // 0.0 &amp;lt;= d &amp;lt; 1.0&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random bytes ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    byte[] bytes = new byte[5];&lt;br /&gt;
    rand.nextBytes(bytes);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random double type number ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    boolean b = rand.nextBoolean();&lt;br /&gt;
    long l = rand.nextLong();&lt;br /&gt;
    float f = rand.nextFloat(); // 0.0 &amp;lt;= f &amp;lt; 1.0&lt;br /&gt;
    double d = rand.nextDouble(); // 0.0 &amp;lt;= d &amp;lt; 1.0&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random float type number ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    boolean b = rand.nextBoolean();&lt;br /&gt;
    long l = rand.nextLong();&lt;br /&gt;
    float f = rand.nextFloat(); // 0.0 &amp;lt;= f &amp;lt; 1.0&lt;br /&gt;
    double d = rand.nextDouble(); // 0.0 &amp;lt;= d &amp;lt; 1.0&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random Gaussian values. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
class RandDemo {&lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    Random r = new Random();&lt;br /&gt;
    double val;&lt;br /&gt;
    double sum = 0;&lt;br /&gt;
    int bell[] = new int[10];&lt;br /&gt;
    for (int i = 0; i &amp;lt; 100; i++) {&lt;br /&gt;
      val = r.nextGaussian();&lt;br /&gt;
      sum += val;&lt;br /&gt;
      double t = -2;&lt;br /&gt;
      for (int x = 0; x &amp;lt; 10; x++, t += 0.5)&lt;br /&gt;
        if (val &amp;lt; t) {&lt;br /&gt;
          bell[x]++;&lt;br /&gt;
          break;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    System.out.println(&amp;quot;Average of values: &amp;quot; + (sum / 100));&lt;br /&gt;
    for (int i = 0; i &amp;lt; 10; i++) {&lt;br /&gt;
      for (int x = bell[i]; x &amp;gt; 0; x--)&lt;br /&gt;
        System.out.print(&amp;quot;*&amp;quot;);&lt;br /&gt;
      System.out.println();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random integers that range from from 0 to n ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    int n = 10;&lt;br /&gt;
    int i = rand.nextInt(n + 1);&lt;br /&gt;
    System.out.println(i);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random long type number ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Random rand = new Random();&lt;br /&gt;
    boolean b = rand.nextBoolean();&lt;br /&gt;
    long l = rand.nextLong();&lt;br /&gt;
    float f = rand.nextFloat(); // 0.0 &amp;lt;= f &amp;lt; 1.0&lt;br /&gt;
    double d = rand.nextDouble(); // 0.0 &amp;lt;= d &amp;lt; 1.0&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random.nextInt(n) returns a distributed int value between 0 (inclusive) and n (exclusive). ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
// random number between 0 AND 10&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) {&lt;br /&gt;
    Random r = new Random();&lt;br /&gt;
    int randint = r.nextInt(10);&lt;br /&gt;
    System.out.println(randint);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random number between 0 AND 10 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) {&lt;br /&gt;
    Random r = new Random();&lt;br /&gt;
    int randint = Math.abs(r.nextInt()) % 11;&lt;br /&gt;
    System.out.println(randint);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Random numbers between 0.0 and 1.0 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    &lt;br /&gt;
    for (int i = 0; i &amp;lt; 5; i++){&lt;br /&gt;
      System.out.println(&amp;quot;Random Number [&amp;quot; + (i + 1) + &amp;quot;] : &amp;quot; + Math.random());&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Roll a six-sided die imes ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.util.Random;&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
   public static void main( String args[] )&lt;br /&gt;
   {&lt;br /&gt;
      Random randomNumbers = new Random(); // random number generator&lt;br /&gt;
      int frequency1 = 0; // count of 1s rolled&lt;br /&gt;
      int frequency2 = 0; // count of 2s rolled&lt;br /&gt;
      int frequency3 = 0; // count of 3s rolled&lt;br /&gt;
      int frequency4 = 0; // count of 4s rolled&lt;br /&gt;
      int frequency5 = 0; // count of 5s rolled&lt;br /&gt;
      int frequency6 = 0; // count of 6s rolled&lt;br /&gt;
      int face; // stores most recently rolled value&lt;br /&gt;
   &lt;br /&gt;
      // summarize results of 6000 rolls of a die&lt;br /&gt;
      for ( int roll = 1; roll &amp;lt;= 6000; roll++ ) &lt;br /&gt;
      {&lt;br /&gt;
         face = 1 + randomNumbers.nextInt( 6 ); // number from 1 to 6&lt;br /&gt;
   &lt;br /&gt;
         // determine roll value 1-6 and increment appropriate counter&lt;br /&gt;
         switch ( face ) &lt;br /&gt;
         {   &lt;br /&gt;
            case 1:&lt;br /&gt;
               ++frequency1; // increment the 1s counter&lt;br /&gt;
               break; &lt;br /&gt;
            case 2:&lt;br /&gt;
               ++frequency2; // increment the 2s counter&lt;br /&gt;
               break;&lt;br /&gt;
            case 3:&lt;br /&gt;
               ++frequency3; // increment the 3s counter&lt;br /&gt;
               break;&lt;br /&gt;
            case 4:&lt;br /&gt;
               ++frequency4; // increment the 4s counter&lt;br /&gt;
               break;&lt;br /&gt;
            case 5:&lt;br /&gt;
               ++frequency5; // increment the 5s counter&lt;br /&gt;
               break;&lt;br /&gt;
            case 6:&lt;br /&gt;
               ++frequency6; // increment the 6s counter&lt;br /&gt;
               break; // optional at end of switch&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
      System.out.println( &amp;quot;Face\tFrequency&amp;quot; ); // output headers&lt;br /&gt;
      System.out.printf( &amp;quot;1\t%d\n2\t%d\n3\t%d\n4\t%d\n5\t%d\n6\t%d\n&amp;quot;,&lt;br /&gt;
         frequency1, frequency2, frequency3, frequency4,&lt;br /&gt;
         frequency5, frequency6 );&lt;br /&gt;
   }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Face  Frequency&lt;br /&gt;
1 1005&lt;br /&gt;
2 1028&lt;br /&gt;
3 1027&lt;br /&gt;
4 989&lt;br /&gt;
5 994&lt;br /&gt;
6 957&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>