title: optimal Java Random seed
body: <p>In regard to providing the <code>long</code> to seed <code>java.util.Random</code>, if I instantiate the object once, it seems that if I just take the time as a seed that will be satisfactory for the life of the program, which for my purpose means that the result of a series of calls to <code>nextDouble()</code> looks random.  </p>
  
  <p>Suppose for reasons of code simplicity, I instantiate <code>Random</code>, use it several times, then re-instantiate, and repeat.  If the seed is provided similarly, the seeds will be similar and increasing because it is based on the time. The increases will be small compared to the value if it is the number of seconds since January 1, 1970.  (Edit: This question was asked in the year 2011.)</p>
  
  <p>If I chain the output of <code>nextDouble()</code> does the re-instantiation of <code>Random</code> with a non-random time-based seed cause a subtle pattern to appear in the composite chain of output from <code>nextDouble()</code>.  Another way to phrase this question is: do I need a seed drawn uniformly from the set of <code>long</code>.</p>