History log of /libcore/luni/src/main/java/java/util/Random.java
Revision Date Author Comments
c5722b61dd9da95dd0f05cd7f57027b88bf16dd3 31-Oct-2013 Mathieu Chartier <mathieuc@google.com> Fix java.util.Random performance regression.

With the monitor change in ART, getting the identity hash code of an
object puts the hash code in the lock word. This hurts performance
if you synchronize on said object since it makes it that we always
go slow path for monitor enter and exit. Although the fix
allocates a new object in the Random constructor, it should not cause
performance problems assuming people don't excessively create new
random number generators.

Change-Id: I750e57fb7c5f70e66ad85d19e2c065e9e52a613f
70472307c91efa252485136ba61d9a27f8137bc3 19-Aug-2013 Elliott Hughes <enh@google.com> Improve the Random.next documentation.

Change-Id: Iee5a82d48f107d85101bf8c40f173d6d29915b8e
cff1616012dc0d56c2da9af2b9b1183e76c7e044 04-Dec-2012 Elliott Hughes <enh@google.com> Add detail messages to all the easy IllegalArgumentException cases.

Noticed during my recent Matcher change.

Change-Id: I415d911b26d0ee548ca04d56bba7fc3d4e6b3f88
b37323027a3fb66b07a2c70eb48e9dd1c4c0f466 12-Sep-2012 Elliott Hughes <enh@google.com> Document that Random.nextGaussian should use StrictMath.

Bug: 7146208
Change-Id: Ife58d868e9310de3f378500fdbf53b2f3a690f04
68618152969be1144d460add7349f0b89ae8f499 23-Jun-2012 Elliott Hughes <enh@google.com> Bring Random.nextGaussian in line with the specification.

Bug: 6126164
Change-Id: I36d5ccc776b15f7f4085da23c189f91507d57224
344110141de805108972f0ad24f16de59ba2aa32 23-Feb-2011 Elliott Hughes <enh@google.com> Fix more FindBugs complaints (BufferedReader, File, and ObjectInputStream).

Also slightly improve the documentation of Random and SecureRandom.

Change-Id: I47b23cef33958fffb4254c9942849ae7b52136f1
79353908d770eb03a7ea683da4ce683810966d58 27-Jan-2011 Elliott Hughes <enh@google.com> Fix an unclosed tag in javadoc.

Change-Id: I95b25c04c129326d2e3d64a627b39b9071243aa2
286b8cfd4479c464ae44099027d7f8d0f986f315 06-Jan-2011 Elliott Hughes <enh@google.com> Fix libcore javadoc errors.

Random's javadoc was pretty random, and Pattern was missing some escaping
in code samples.

Also work round droiddoc bugs that were messing up Formatter and classes
that inherited documentation from Object.

Bug: http://code.google.com/p/android/issues/detail?id=13264
Bug: 3318601

(Cherry-pick from gingerbread.)

Change-Id: I452414aedc04c29127dd0dc3c41e6386bbff1766
1c76910f0a0fb0cb761a4505f3be1204d6be012b 06-Jan-2011 Elliott Hughes <enh@google.com> Fix libcore javadoc errors.

Random's javadoc was pretty random, and Pattern was missing some escaping
in code samples.

Also work round droiddoc bugs that were messing up Formatter and classes
that inherited documentation from Object.

Bug: http://code.google.com/p/android/issues/detail?id=13264
Bug: 3318601
Change-Id: Iddb0c807398840191ee003bc1644d611aef4d61d
31b86dc55b7ef76d7d0ac47132c7f1cd4a45ee58 15-Nov-2010 Glenn Kasten <gkasten@google.com> Fix documentation error

Change-Id: I1026a2ad0ff91823835b139e999fa5f21299a5a4
f33eae7e84eb6d3b0f4e86b59605bb3de73009f3 13-May-2010 Elliott Hughes <enh@google.com> Remove all trailing whitespace from the dalvik team-maintained parts of libcore.

Gentlemen, you may now set your editors to "strip trailing whitespace"...

Change-Id: I85b2f6c80e5fbef1af6cab11789790b078c11b1b
1e8bd6143140f44337d6f567335afeb48b263d95 25-Mar-2010 Elliott Hughes <enh@google.com> Fix java.util.Random's constructors.

Subclasses rely on having their overridden setSeed called by Random's
constructors, and the RI actually documents this behavior. (The
documentation even changed between Java 5 and Java 6 to make it _more_
explicit.)

This patch keeps that part of I6239d93bb46876ef1c4a5e155a6dc1ac6fab4eae
that improved our randomness, but reverts the attempt to fix Random's
uncouth behavior.

Also a regression test so we don't try to fix Random again in future.

Bug: 2502231
Change-Id: Ieea1009145c74eac9475c0cd5066dabad20eb114
4fefecee9d4a5d2a4510f516b4015607b19e8d09 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
7fb15841fb9efbdf924be69f1a585c4868c527ac 09-Oct-2009 Dan Bornstein <danfuzz@android.com> Fix the docs for the no-arg Random() constructor to better reflect reality,
and make the constructors more resilient with respect to subclassing by
using System.identityHashCode() instead of Object.hashCode(), and also by
not calling overridable methods.

Change-Id: I6239d93bb46876ef1c4a5e155a6dc1ac6fab4eae
f5597e626ecf7949d249dea08c1a2964d890ec11 25-Jul-2009 Jesse Wilson <jessewilson@google.com> Integrate luni module (but not tests) to Harmony r772995.

Notable changes
- Stripped "@since Android 1.0" from many files. Most files
are now 100% the same in Dalvik and Harmony.
- AbstractStringBuilder.reverse() supports surrogates
- AbstractStringBuilder shares less to waste less memory
- Bitset optimized
- BufferedInputStream changed to support unsynchronized close()
- BufferedOutputStream does flushInternal
- BufferedReader supports EBCDIC NEL
- Collections.synchronizedList().indexOf() does a copy for more concurrency
- Classes in nio module changed: DatagramChannelImpl, SocketChannelImpl
and ServerSocketChannelImpl (these depend on internal APIs changed in
this update)
- DataInputStream/DataOutputStream now use a small buffer to limit the
number of times the underlying stream is accessed
- Date now has a minutes offset, more efficient toString()
- ExposedByteArrayInputStream: new internal class
- DeleteOnExit moved to top-level class
- FileDescriptor.isValid() now non-native
- Float, Double lessThan optimized (fix for compare(-0.0F, 0.0F) still pending)
- FileURLConnection now guesses content types from streams
- HashMap iterator changes
- Hashtable iterator changes
- INetworkSystem
- removes bind2(), createMulticastSocket, sendStream(),
- renames createSocket to createStreamSocket
- JarURLConnection rewritten
- LinkedHashMap: new iterator
- Locale, Currency, TimeZone: now use ICU in Harmony, plain Java in Dalvik
- ObjectInputStream: Accessor objects in Harmony, direct native in Dalvik
- ProxyClassFile - many changes
- String - optimized ascii for toLowerCase, toUpperCase, compare
- Timer - rewritten
- TreeMap - rewritten
- URLClassLoader - new
- URLConnection - new guessContentTypeFromStream(), uses org.apache.harmony.awt.www.content
to lookup content type handlers
adc854b798c1cfe3bfd4c27d68d5cee38ca617da 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
1c0fed63c71ddb230f3b304aac12caffbedf2f21 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
dd828f42a5c83b4270d4fbf6fce2da1878f1e84a 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
fdb2704414a9ed92394ada0d1395e4db86889465 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution